Heim > Artikel > Backend-Entwicklung > PHP vergleicht Arrays auf Gleichheit
PHP ist eine leistungsstarke und weit verbreitete Programmiersprache. Sie bietet viele Array-bezogene Funktionen und Methoden, sodass Entwickler problemlos verschiedene Operationen an Arrays durchführen können. Bei der Verwendung von Arrays müssen wir häufig vergleichen, ob zwei Arrays gleich sind. In diesem Artikel wird vorgestellt, wie PHP Arrays auf Gleichheit vergleicht, sowie einige damit verbundene praktische Fähigkeiten.
Sie können den „=="-Operator in PHP verwenden, um zu vergleichen, ob zwei Arrays gleich sind. Zwei Arrays gelten als gleich, wenn sie dieselben Schlüssel-Wert-Paare haben und die Schlüssel-Wert-Paare in derselben Reihenfolge vorliegen. Beispiel:
$arr1 = array('a' => 1, 'b' => 2, 'c' => 3); $arr2 = array('b' => 2, 'a' => 1, 'c' => 3); if ($arr1 == $arr2) { echo '两个数组相等'; } else { echo '两个数组不相等'; }
Das Ausgabeergebnis lautet „zwei Arrays sind gleich“, da $arr1 und $arr2 dieselben Schlüssel-Wert-Paare haben und die Reihenfolge dieser Schlüssel-Wert-Paare ebenfalls dieselbe ist.
Es ist jedoch zu beachten, dass der Operator „==“ nur vergleicht, ob die Schlüssel und Werte des Arrays gleich sind, nicht jedoch den Typ des Arrays. Zum Beispiel:
$arr1 = array(1, 2, 3); $arr2 = array('1', '2', '3'); if ($arr1 == $arr2) { echo '两个数组相等'; } else { echo '两个数组不相等'; }
Das Ausgabeergebnis lautet „Beide Arrays sind gleich“, obwohl $arr1 und $arr2 unterschiedliche Typen haben. Dies liegt daran, dass der Operator „==" nur Schlüssel und Werte auf Gleichheit vergleicht, nicht Typen.
Wenn Sie die Schlüssel, Werte und Typen des Arrays gleichzeitig auf Gleichheit vergleichen möchten, müssen Sie den Operator „===“ verwenden. Zum Beispiel:
$arr1 = array(1, 2, 3); $arr2 = array('1', '2', '3'); if ($arr1 === $arr2) { echo '两个数组相等'; } else { echo '两个数组不相等'; }
Das Ausgabeergebnis lautet „Die beiden Arrays sind nicht gleich“, da die Typen von $arr1 und $arr2 unterschiedlich sind.
In einigen Fällen müssen wir möglicherweise vergleichen, ob die Schlüssel und Werte des Arrays gleich sind, aber die Reihenfolge der Schlüssel-Wert-Paare kann unterschiedlich sein. Zu diesem Zeitpunkt können Sie die Funktion usort() und die benutzerdefinierte Vergleichsfunktion von PHP verwenden, um dies zu erreichen. Zum Beispiel:
function cmp($a, $b) { if ($a == $b) { return 0; } return ($a < $b) ? -1 : 1; } $arr1 = array('a' => 1, 'b' => 2, 'c' => 3); $arr2 = array('b' => 2, 'a' => 1, 'c' => 3); usort($arr1, 'cmp'); usort($arr2, 'cmp'); if ($arr1 == $arr2) { echo '两个数组相等'; } else { echo '两个数组不相等'; }
Das Ausgabeergebnis ist „Zwei Arrays sind gleich“, weil wir die Funktion usort() und die benutzerdefinierte Vergleichsfunktion cmp() verwendet haben, um die beiden Arrays zu sortieren und zu vergleichen.
Beim Array-Vergleich gibt es außerdem Folgendes zu beachten:
Das Folgende ist ein praktisches Beispiel, bei dem mehrere Methoden zum Vergleichen von Arrays auf Gleichheit verwendet werden:
<?php // 比较数组是否相等 $arr1 = array('a' => 1, 'b' => 2, 'c' => 3); $arr2 = array('b' => 2, 'a' => 1, 'c' => 3); // 方法一:使用“==”运算符 if ($arr1 == $arr2) { echo '方法一:两个数组相等'; } else { echo '方法一:两个数组不相等'; } echo '<br>'; // 方法二:使用“===”运算符 if ($arr1 === $arr2) { echo '方法二:两个数组相等'; } else { echo '方法二:两个数组不相等'; } echo '<br>'; // 方法三:使用usort()函数和自定义比较函数 function cmp($a, $b) { if ($a == $b) { return 0; } return ($a < $b) ? -1 : 1; } usort($arr1, 'cmp'); usort($arr2, 'cmp'); if ($arr1 == $arr2) { echo '方法三:两个数组相等'; } else { echo '方法三:两个数组不相等'; } ?>
Nach dem Ausführen des obigen Codes werden die folgenden Ergebnisse ausgegeben:
方法一:两个数组相等 方法二:两个数组不相等 方法三:两个数组相等
In PHP Der Vergleich von Arrays auf Gleichheit ist eine sehr häufige Aufgabe. Wir können den Operator „==“ verwenden, um zu vergleichen, ob die Schlüssel und Werte des Arrays gleich sind, und den Operator „===“, um zu vergleichen, ob die Schlüssel, Werte und Typen des Arrays gleich sind Verwenden Sie zum Vergleichen auch die Funktion usort() und die benutzerdefinierte Vergleichsfunktion. Beim Vergleich von Arrays müssen Sie außerdem darauf achten, ob im Array derselbe Schlüsselname und Schlüsselwert vorhanden ist und ob die Reihenfolge der Schlüssel-Wert-Paare gleich ist. Mit der oben genannten Methode können Sie Arrays einfach auf Gleichheit vergleichen und so die Lesbarkeit und Wartbarkeit Ihres Codes verbessern.
Das obige ist der detaillierte Inhalt vonPHP vergleicht Arrays auf Gleichheit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!