Computes the difference of arrays using keys for comparison

# array_diff_key

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

array_diff_key — Computes the difference of arrays using keys for comparison

### Description

array_diff_key(array `$array`, array `...$arrays`): array

Compares the keys from `array` against the keys from `arrays` and returns the difference. This function is like array_diff() except the comparison is done on the keys instead of the values.

### Parameters

`array`

  The array to compare from

`arrays`

  Arrays to compare against

### Return Values

Returns an array containing all the entries from `array` whose keys are absent from all of the other arrays.

### Changelog

Version | Description
--- | ---
8.0.0 | This function can now be called with only one parameter. Formerly, at least two parameters have been required.

### Examples

Example #1 array_diff_key() example

The two keys from the `key => value` pairs are considered equal only if `(string) $key1 === (string) $key2` . In other words a strict type check is executed so the string representation must be the same.

`<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'yellow' => 7, 'cyan' => 8);
var_dump(array_diff_key($array1, $array2));
?>`

The above example will output:

    array(3) {
      ["blue"]=>
      int(1)
      ["red"]=>
      int(2)
      ["purple"]=>
      int(4)
    }

`<?php
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'yellow' => 7, 'cyan' => 8);
$array3 = array('blue' => 6, 'yellow' => 7, 'mauve' => 8);
var_dump(array_diff_key($array1, $array2, $array3));
?>`

The above example will output:

    array(2) {
      ["red"]=>
      int(2)
      ["purple"]=>
      int(4)
    }

### Notes

> Note:

> This function only checks one dimension of a n-dimensional array. Of course you can check deeper dimensions by using `array_diff_key($array1[0], $array2[0]);`.

### See Also

- array_diff() - Computes the difference of arrays
- array_udiff() - Computes the difference of arrays by using a callback function for data comparison
- array_diff_assoc() - Computes the difference of arrays with additional index check
- array_diff_uassoc() - Computes the difference of arrays with additional index check which is performed by a user supplied callback function
- array_udiff_assoc() - Computes the difference of arrays with additional index check, compares data by a callback function
- array_udiff_uassoc() - Computes the difference of arrays with additional index check, compares data and indexes by a callback function
- array_diff_ukey() - Computes the difference of arrays using a callback function on the keys for comparison
- array_intersect() - Computes the intersection of arrays
- array_intersect_assoc() - Computes the intersection of arrays with additional index check
- array_intersect_uassoc() - Computes the intersection of arrays with additional index check, compares indexes by a callback function
- array_intersect_key() - Computes the intersection of arrays using keys for comparison
- array_intersect_ukey() - Computes the intersection of arrays using a callback function on the keys for comparison

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open