Функция array_intersect_ukey
Функцията array_intersect_ukey приема няколко масива и callback-функция за сравнение на техните ключове. В първия параметър се предава основният масив, а в следващите - масиви за сравнение. Последният параметър се предава callback-функция, която трябва да сравнява ключовете и да връща цяло число (по-малко, равно или по-голямо от нула).
Синтаксис
array_intersect_ukey(array $array1, array $array2, ..., callable $key_compare_func): array
Пример
Сравняваме ключовете на два масива с помощта на потребителска функция:
<?php
$array1 = ['a' => 1, 'b' => 2, 'c' => 3];
$array2 = ['a' => 4, 'c' => 5, 'd' => 6];
$res = array_intersect_ukey($array1, $array2, function($key1, $key2) {
return strcmp($key1, $key2);
});
print_r($res);
?>
Резултат от изпълнението на кода:
['a' => 1, 'c' => 3]
Пример
Сравнение на ключовете на три масива с чувствителност към регистъра:
<?php
$array1 = ['A' => 1, 'B' => 2, 'C' => 3];
$array2 = ['a' => 4, 'B' => 5, 'C' => 6];
$array3 = ['A' => 7, 'B' => 8, 'c' => 9];
$res = array_intersect_ukey($array1, $array2, $array3, function($key1, $key2) {
return strcmp($key1, $key2);
});
print_r($res);
?>
Резултат от изпълнението на кода:
['B' => 2]
Вижте също
-
функцията
array_intersect,
която изчислява пресичането на масиви по стойности -
функцията
array_intersect_key,
която изчислява пресичането на масиви по ключове -
функцията
array_uintersect,
която изчислява пресичането на масиви с callback-функция за сравнение на стойности