Funktion array_intersect_ukey
Die Funktion array_intersect_ukey akzeptiert mehrere Arrays und eine Callback-Funktion zum Vergleich ihrer Schlüssel. Der erste Parameter ist das Hauptarray, die folgenden Parameter sind die Arrays zum Vergleich. Der letzte Parameter ist die Callback-Funktion, die Schlüssel vergleichen und eine Ganzzahl zurückgeben soll (kleiner, gleich oder größer Null).
Syntax
array_intersect_ukey(array $array1, array $array2, ..., callable $key_compare_func): array
Beispiel
Vergleichen wir die Schlüssel zweier Arrays mit einer benutzerdefinierten Funktion:
<?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);
?>
Ergebnis der Codeausführung:
['a' => 1, 'c' => 3]
Beispiel
Vergleich von Schlüsseln aus drei Arrays mit Groß-/Kleinschreibung:
<?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);
?>
Ergebnis der Codeausführung:
['B' => 2]
Siehe auch
-
die Funktion
array_intersect,
die die Schnittmenge von Arrays nach Werten berechnet -
die Funktion
array_intersect_key,
die die Schnittmenge von Arrays nach Schlüsseln berechnet -
die Funktion
array_uintersect,
die die Schnittmenge von Arrays mit Callback-Funktion zum Vergleich der Werte berechnet