In PHP ist Array_Diff () eine sehr praktische Funktion, mit der Sie zwei oder mehr Arrays vergleichen und Elemente im ersten Array zurückgeben, jedoch nicht in anderen Arrays. Durch die Verwendung der Funktion array_diff () können Sie problemlos einen Array -Vergleichsbericht erstellen, um die Unterschiede zwischen Arrays zu ermitteln.
Die Funktion array_diff () wird verwendet, um die Differenz zwischen zwei Arrays zu berechnen. Es gibt ein neues Array zurück, das alle Elemente im ersten Array enthält, jedoch nicht in anderen Arrays. Wenn Sie zwei Arrays vergleichen, gibt die Funktion ein Array zurück, das Elemente enthält, die nur im ersten Array erscheinen.
Funktionsprototyp:
array_diff(array $array1, array $array2, array ...$arrays): array
Parameter:
$ array1 : Das erste Array, das zum Vergleich mit anderen Arrays verwendet wird.
$ array2, ... $ arrays : ein oder mehrere Arrays im Vergleich zum ersten Array.
Rückgabewert: Gibt ein Array zurück, das alle Elemente enthält, die im ersten Array erscheinen, jedoch nicht in anderen Arrays.
Angenommen, wir haben zwei Arrays, die Elementelemente von zwei Listen darstellen, und wir möchten sie vergleichen und einen Bericht erstellen, das in der ersten Liste vorhanden ist, jedoch nicht in der zweiten Liste. Hier ist ein Beispielcode:
<?php
// Das erste Array:ProduktlisteA
$arrayA = array('Apfel', 'Banane', 'orange', 'Traube', 'Wassermelone');
// Das zweite Array:ProduktlisteB
$arrayB = array('Apfel', 'Banane', 'Wassermelone');
// verwenden array_diff() Berechnen Sie den Differenzsatz
$difference = array_diff($arrayA, $arrayB);
// Ausgangsdifferenzbericht
echo "In der ListeA中但不In der ListeBProdukte in:\n";
foreach ($difference as $item) {
echo $item . "\n";
}
?>
Ausgangsergebnis:
In der ListeA中但不In der ListeBProdukte in:
orange
Traube
Im obigen Beispiel hilft uns die Funktion array_diff () uns, Elemente zu finden, die in $ arraya, jedoch nicht in $ arrayb (d. H. "Orange" und "Trauben") vorhanden sind. Dies ist die Grundlage für die Verwendung der Funktion array_diff (), um Vergleichsberichte zu generieren.
array_diff () kann nicht nur zwei Arrays, sondern auch mehrere Arrays vergleichen. Wenn Sie beispielsweise mehrere Elementlisten haben und Elemente in der ersten Liste finden möchten, die sich von allen anderen Listen unterscheiden, kann Array_diff () Ihnen auch einfach helfen.
<?php
// ProduktlisteA
$arrayA = array('Apfel', 'Banane', 'orange', 'Traube', 'Wassermelone');
// ProduktlisteB
$arrayB = array('Apfel', 'Banane', 'Wassermelone');
// ProduktlisteC
$arrayC = array('Apfel', 'orange', 'Wassermelone');
// verwenden array_diff() Vergleich von drei Arrays
$difference = array_diff($arrayA, $arrayB, $arrayC);
// Ausgangsdifferenzbericht
echo "In der ListeA中但不In der ListeBund ListeCProdukte in:\n";
foreach ($difference as $item) {
echo $item . "\n";
}
?>
Ausgangsergebnis:
In der ListeA中但不In der ListeBund ListeCProdukte in:
Traube
Durch den Vergleich mehrerer Arrays gibt Array_Diff () Elemente (d. H. "GRAPE") zurück, die in $ arraya , jedoch nicht in $ arrayb und $ arrayc existiert.
Die Funktion array_diff () ist ein sehr leistungsfähiges Tool, mit dem Sie zwei oder mehr Arrays vergleichen und die Unterschiede finden können. array_diff () kann eine große Hilfe liefern, ob es sich um Datenvergleichs-, Berichtserzeugungs- oder Array -Elementdeduplizierung handelt. Auf diese Weise können Sie schnell feststellen, welche Elemente zwischen verschiedenen Arrays unterschiedlich sind und so die Daten besser analysieren.