array_intersect_ukey()
array_intersect_ukey() — Computes the intersection of arrays using a callback function on the keys for comparison.
Built-in function of PHP 8.5. The manual lists it as available in PHP 5 >= 5.1.0, PHP 7, PHP 8. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.
What it does
array_intersect_ukey() returns an array containing all the values of array which have matching keys that are present in all the arguments.
Signature
array_intersect_ukey(array $array, array ...$arrays, callable $key_compare_func): array callback(mixed $a, mixed $b): int
Parameters
| Parameter | Type | What it takes |
|---|---|---|
| $array | array | Initial array for comparison of the arrays. |
| ...$arrays | array | Arrays to compare keys against. |
| $key_compare_func | callable | The comparison function must return an integer less than, equal to, or greater than zero if the first argument is considered to be respectively less than, equal to, or greater than the second. |
Return value
Returns the values of array whose keys exist in all the arguments.
Example
A runnable snippet:
function key_compare_func($key1, $key2) { if ($key1 == $key2) return 0; else if ($key1 > $key2) return 1; else return -1; } $array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4); $array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8); var_dump(array_intersect_ukey($array1, $array2, 'key_compare_func'));
Output:
array(2) { ["blue"]=> int(1) ["green"]=> int(3) }
See also
array_diff(), array_udiff(), array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_diff_key(), array_diff_ukey(), array_intersect(), array_intersect_assoc(), array_intersect_uassoc(), array_intersect_key()
All PHP 8.5 built-in functions
Reference card built from the PHP manual page array_intersect_ukey() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.