Php/docs/function.array-diff-key
array_diff_key
(PHP 5 >= 5.1.0, PHP 7)
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.
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