(PHP 5 >= 5.1.0, PHP 7, PHP 8)
array_intersect_ukey — Вычисляет пересечение массивов, используя callback-функцию для сравнения ключей
Функция array_intersect_ukey()
возвращает массив,
состоящий из значений массива array,
ключи которых содержатся во всех аргументах.
arrayОсновной проверяемый массив.
arraysМассивы, с которыми сравниваются ключи.
key_compare_func
Возвращает ассоциативный массив,
состоящий из значений массива array,
ключи которых содержатся во всех аргументах.
Пример #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', неодинаковые в двух
массивах. Совпадение всё равно есть, так как сравниваются только ключи.
Возвращаемые значения берутся из массива array.