Vergleichen

Auch wenn es möglich ist, selbst Funktionen zu schreiben, die Arrays miteinander vergleichen, bringt PHP eine ganze Reihe von Funktionen mit, die diese Funktionalität bieten.

Die Funktion array_diff() vergleicht zwei oder mehr Array miteinander. Dabei werden der Funktion mindestens zwei Arrays als Parameter übergeben. Es können aber beliebig viele weitere Parameter übergeben werden. Ein zurückgegebenes Array beinhaltet alle Werte des ersten Arrays, welche in keinem der weiteren Arrays vorhanden sind.

Die Funktion array_diff_assoc() arbeitet ähnlich. Im Gegensatz zu array_diff() werden aber auch die Schlüssel für den Vergleich herangezogen.

Die Funktion array_diff_key() hingegen ist das Komplementär zu array_diff(). Es werden nur die Schlüssel für den Vergleich herangezogen.

Mit Hilfe der Funktion array_udiff() ist es möglich, eine übergebene Funktion zu nutzen, die die Elemente der Arrays miteinander vergleicht. Dabei besitzt diese Funktion die gleiche Signatur wie bei usort(). Als Parameter der Funktion array_udiff() werden mindestens zwei zu vergleichende Arrays übergeben. Weitere Arrays sind optional. Abgeschlossen wird die Parameterliste mit der Übergabe der Funktion.

Die Funktion array_diff_uassoc() wiederum prüft zusätzlich auch die Schlüsselwerte mit Hilfe der übergebenen Vergleichsfunktion. Wiederum darf zunächst eine beliebige Anzahl an Arrays als Parameter übergeben werden, bevor die Vergleichsfunktion übergeben wird. Die Funktion array_diff_ukey() schließlich hat die gleiche Signatur, prüft jedoch nur die Schlüsselwerte.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert