Heim >Backend-Entwicklung >PHP-Problem >PHP verschiedene Elemente von 2 Arrays
PHP ist eine sehr beliebte Programmiersprache und wir stoßen häufig auf verschiedene Probleme, die Arrays als Datentypen erfordern. Eine der häufigsten Fragen ist, wie man die verschiedenen Elemente in zwei Arrays findet. In diesem Artikel werden drei gängige Methoden zur Lösung dieses Problems vorgestellt.
Methode 1: Verwenden Sie die Funktion array_diff().
PHP bietet eine sehr praktische Funktion zum Vergleichen verschiedener Elemente zweier Arrays. Diese Funktion ist array_diff().
Zum Beispiel haben wir zwei Arrays, $arr1 und $arr2:
$arr1 = array('apple', 'banana', 'orange', 'pear'); $arr2 = array('apple', 'banana', 'kiwi', 'grape');
Wir möchten die unterschiedlichen Elemente in den beiden Arrays herausfinden, dann können wir die Funktion array_diff() wie folgt verwenden:
$diff = array_diff($arr1, $arr2); print_r($diff);
Das Ausgabeergebnis ist:
Array ( [2] => orange [3] => pear )
Methode 2: Verwenden Sie die Funktion array_diff_key()
Wenn wir die Schlüssel des Arrays anstelle der Werte vergleichen möchten, können wir die Funktion array_diff_key() verwenden, um das Problem zu lösen.
Zum Beispiel haben wir zwei Arrays, $arr1 und $arr2, wobei die Schlüssel von $arr1 „a“, „b“, „c“ und die Schlüssel von $arr2 „a“, „d“ sind. 'e', wir wollen die unterschiedlichen Schlüssel in den beiden Arrays herausfinden, dann können wir die Funktion array_diff_key() wie folgt verwenden:
$arr1 = array('a'=>1, 'b'=>2, 'c'=>3); $arr2 = array('a'=>1, 'd'=>4, 'e'=>5); $diff = array_diff_key($arr1, $arr2); print_r($diff);
Das Ausgabeergebnis ist:
Array ( [b] => 2 [c] => 3 )
Methode 3: Foreach-Schleife verwenden
Zusätzlich Zur Verwendung der von PHP bereitgestellten Funktionen können wir zusätzlich zu vordefinierten Funktionen auch eine foreach-Schleife verwenden, um verschiedene Elemente zweier Arrays zu vergleichen.
Zum Beispiel haben wir zwei Arrays, $arr1 und $arr2:
$arr1 = array('apple', 'banana', 'orange', 'pear'); $arr2 = array('apple', 'banana', 'kiwi', 'grape');
Wir wollen die verschiedenen Elemente in den beiden Arrays herausfinden, dann können wir eine foreach-Schleife verwenden, um Folgendes zu erreichen:
$diff = array(); foreach($arr1 as $val) { if (!in_array($val, $arr2)) { $diff[] = $val; } } foreach($arr2 as $val) { if (!in_array($val, $arr1)) { $diff[] = $val; } } print_r($diff);
Das Ausgabeergebnis ist:
Array ( [2] => orange [3] => pear [4] => kiwi [5] => grape )
Zusammenfassung
Die oben genannten sind drei häufig verwendete Methoden, um verschiedene Elemente in zwei Arrays zu finden. Jede Methode hat ihre eigenen Eigenschaften und anwendbaren Szenarien und muss entsprechend der tatsächlichen Situation ausgewählt werden. Unabhängig davon, welche Methode verwendet wird, sollten Sie beim Array-Vergleich auf Faktoren wie die Art und Menge der Schlüssel und Werte des Arrays achten, um die Genauigkeit der Vergleichsergebnisse sicherzustellen.
Das obige ist der detaillierte Inhalt vonPHP verschiedene Elemente von 2 Arrays. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!