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

ParameterTypeWhat it takes
$arrayarrayInitial array for comparison of the arrays.
...$arraysarrayArrays to compare keys against.
$key_compare_funccallableThe 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.