(PHP 4 >= 4.3.0, PHP 5, PHP 7)
array_intersect_assoc — Ermittelt die Schnittmenge von Arrays mit Indexprüfung
$array1
, array $array2
[, array $...
] ) : array
array_intersect_assoc() gibt ein Array mit allen Werten
von array1
, die auch in allen anderen Argumenten
enthalten sind, zurück. Beachten Sie, dass anders als von
array_intersect() ebenfalls die Schlüssel zum Vergleich
herangezogen werden.
array1
Ein Array mit den Hauptwerten, die geprüft werden sollen.
array2
Ein Array, gegen welches die Werte geprüft werden sollen.
...
Weitere Arrays gegen welche geprüft werden soll.
Gibt ein assoziatives Array zurück, welches alle Werte aus
array1
enthält, welche auch in allen anderen
Argumenten enthalten sind.
Beispiel #1 array_intersect_assoc() Beispiel
<?php
$array1 = array("a" => "grün", "b" => "braun", "c" => "blau", "rot");
$array2 = array("a" => "grün", "b"=>"gelb", "blau", "rot");
$ergebnis_array = array_intersect_assoc($array1, $array2);
print_r($ergebnis_array);
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Array ( [a] => grün )
In unserem Beispiel sehen Sie, dass einzig das Paar "a" =>
"green"
in beiden Arrays enthalten ist und daher zurückgegeben
wird. Der Wert "rot"
wird nicht zurückgegeben, weil
sein Schlüsselwert in $array1 0
ist,
wohingegen der Schlüssel von "rot" in $array2 den Wert
1
hat. Der Schlüssel "b"
wird nicht
zurückgegeben, weil er in beiden Arrays einen anderen Wert hat.
Die beiden Werte des Schlüssel => Wert
Paares werden
als gleich erachtet, genau dann wenn (string) $elem1 ===
(string) $elem2
. Anders ausgedrückt wird eine strikte
Typenprüfung durchgeführt, so dass die Stringrepresentation gleich sein
muss.