array_diff_assoc
Berechnet den Unterschied zwischen Arrays mit zusätzlicher
Indexprüfung
&reftitle.description;
arrayarray_diff_assoc
arrayarray1
arrayarray2
array ...
array_diff_assoc gibt ein array zurück,
das alle Werte aus array1 enthält, die in keinem der
anderen Argumente vorhanden ist. Beachten Sie, dass die Schlüssel anders
als von array_diff in den Vergleich einbezogen werden.
array_diff_assoc-Beispiel
"gruen", "b" => "braun", "c" => "blau", "rot");
$array2 = array("a" => "gruen", "gelb", "rot");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>
]]>
&example.outputs;
braun
[c] => blau
[0] => rot
)
]]>
In unserem obigen Beispiel sieht man, dass das
"a" => "gruen"-Paar in beiden Arrays enthalten ist
und daher nicht in der Ausgabe der Funktion auftaucht. Andererseits ist das
Paar 0 => "rot" in der Ausgabe, weil
"red" im zweiten Argument einen Schlüsselwert von
1 enthält.
Zwei Werte von Schlüssel => Wert-Paaren werden nur
dann als gleich betrachtet, wenn (string) $elem1 === (string)
$elem2 gilt. Anders ausgedrückt findet eine strikte Prüfung statt,
in der die String-Repräsentationen gleich sein müssen.
Bitte beachten Sie, dass diese Funktion nur eine Dimension eines
n-dimensionalen Arrays prüft. Natürlich kann man tiefere Dimensionen
überprüfen, indem man zum Beispiel
array_diff_assoc($array1[0], $array2[0]); verwendet.
Siehe auch array_diff,
array_intersect
und array_intersect_assoc.