array_diff_key

Computes the difference of arrays using keys for comparison

&reftitle.description; `array` `array_diff_key` `array` `array` `array` `arrays`

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.

&reftitle.parameters;

`array`

- The array to compare from

`arrays`

- Arrays to compare against

&reftitle.returnvalues;

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

&reftitle.changelog;

&Version; | &Description;
&array.changelog.require-only-one;

&reftitle.examples;

### `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));
    ?>

&example.outputs;

    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));
    ?>

&example.outputs;

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

&reftitle.notes;

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]);`.

&reftitle.seealso;

- `array_diff`
- `array_udiff`
- `array_diff_assoc`
- `array_diff_uassoc`
- `array_udiff_assoc`
- `array_udiff_uassoc`
- `array_diff_ukey`
- `array_intersect`
- `array_intersect_assoc`
- `array_intersect_uassoc`
- `array_intersect_key`
- `array_intersect_ukey`