Funkcja array_intersect_ukey
Funkcja array_intersect_ukey przyjmuje kilka tablic i funkcję callback do porównywania ich kluczy. W pierwszym parametrze przekazywana jest tablica główna, a w kolejnych - tablice do porównania. Ostatnim parametrem przekazywana jest funkcja callback, która powinna porównywać klucze i zwracać liczbę całkowitą (mniejszą, równą lub większą od zera).
Składnia
array_intersect_ukey(array $array1, array $array2, ..., callable $key_compare_func): array
Przykład
Porównajmy klucze dwóch tablic za pomocą funkcji użytkownika:
<?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);
?>
Wynik wykonania kodu:
['a' => 1, 'c' => 3]
Przykład
Porównywanie kluczy trzech tablic z uwzględnieniem wielkości liter:
<?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);
?>
Wynik wykonania kodu:
['B' => 2]
Zobacz też
-
funkcję
array_intersect,
która oblicza przecięcie tablic według wartości -
funkcję
array_intersect_key,
która oblicza przecięcie tablic według kluczy -
funkcję
array_uintersect,
która oblicza przecięcie tablic z funkcją callback do porównywania wartości