array_intersect_uassoc
array_intersect
Функции для работы с массивами
PHP Manual

# array_intersect_ukey

(PHP 5 >= 5.1.0)

array_intersect_ukey — Вычислить пересечение массивов, используя функцию обратного вызова для сравнения ключей

### Описание

array array_intersect_ukey ( array `$array1` , array `$array2` [, array `$...` ], callback `$key_compare_func` )

array_intersect_ukey() возвращает массив, содержащий значения `array1` , имеющие ключи, содержащиеся во всех последующих параметрах.

Для сравнения используется функция, определённая пользователем. Она должна возвращать целое число меньшее, равное или большее нуля, если первый ключ, соответственно, меньше, равен или больше второго.

Пример #1 Пример использования array_intersect_ukey()

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

Результат выполнения данного примера:

    array(2) {
      ["blue"]=>
      int(1)
      ["green"]=>
      int(3)
    })

В нашем примере только ключи 'blue' и 'green' содержатся в обоих массивах и поэтому возвращаются. Также обратите внимание, что значения, соответствующие ключам 'blue' и 'green' различны в исходных массивах. Совпадение происходит, так как сравниваются только ключи. Возвращаемые значения берутся из `array1` .

См. также 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().

array_intersect_uassoc
array_intersect
Функции для работы с массивами
PHP Manual