Vergleichen zwei Arrays in PHP
-
Verwenden Sie die Operatoren
==
und!=
, um zwei Arrays in PHP zu vergleichen -
Verwenden Sie die Operatoren
===
und!==
, um zwei Arrays in PHP zu vergleichen -
Verwenden Sie die Funktion
sort()
, um zwei Arrays zu vergleichen, wenn die Reihenfolge in PHP nicht wichtig ist -
Verwenden Sie die Funktion
array_diff()
, um zwei Arrays zu vergleichen und den Unterschied in PHP zurückzugeben -
Verwenden Sie die Funktion
array_intersect()
, um zwei Arrays zu vergleichen und die Übereinstimmungen in PHP zurückzugeben
Alle Arten von Operationen werden mit Arrays unterschiedlicher Komplexität durchgeführt, und Vergleichsoperationen sind nicht anders. Wenn wir zwei Werte vergleichen, wollen wir verstehen, wie ähnlich oder unähnlich sie sind.
Mit Zahlen (Integer und Float), Zeichen und Strings kann es einfach sein. Bei Arrays kann es jedoch etwas kompliziert werden.
Machen Sie sich keine Sorgen, denn es ist einfach und es gibt verschiedene Operatoren, die wir verwenden können. Unabhängig davon, ob der Vergleich streng ist oder nicht, gibt es einen Operator.
In diesem Artikel werden vier Operatoren und drei Funktionen betrachtet, die den Vergleich zweier Arrays einfach machen, und anhand hervorragender Beispiele erläutert, wie dies möglich ist.
Verwenden Sie die Operatoren ==
und !=
, um zwei Arrays in PHP zu vergleichen
Der erste Operator ist der Operator ==
. Es ist der Gleichheitsoperator, und wenn wir zwei Arrays mit diesem Operator vergleichen, wollen wir wissen, ob das erste Array gleich dem zweiten Array ist.
Vergleichsoperationen konzentrieren sich darauf, Ähnlichkeiten oder Unterschiede zwischen zwei Werten zu finden. Mit dem Operator ==
erhalten Sie also eine boolesche Antwort, wobei TRUE für Ähnlichkeit und FALSE für Unähnlichkeit steht.
Hier verwendet der Code den Operator ==
, um zwei Arrays zu vergleichen.
<?php
$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array(5, 2.45, 'hello', 3.56, 4);
// Check for equality
if ($arr1 == $arr2)
echo "Similar Arrays";
else
echo "Not Similar Arrays";
?>
Ausgabe:
Not Similar Arrays
Sie können den Operator !=
verwenden, einen Ungleichheitsoperator. Wenn wir zwei Arrays mit diesem Operator vergleichen, möchten wir wissen, ob das erste Array ungleich dem zweiten Array ist.
Es gibt eine boolesche Antwort aus, wobei TRUE für Unähnlichkeit und FALSE für Ähnlichkeit steht.
<?php
$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array(5, 2.45, 'hello', 3.56, 4);
// Check for inequality
if ($arr1 != $arr2)
echo "Not Similar Arrays";
else
echo "Similar Arrays";
?>
Ausgabe:
Not Similar Arrays
Diese beiden Operatoren arbeiten mit assoziativen und mehrdimensionalen Arrays und vergleichen nur die Werte, nicht die Schlüssel.
Verwenden Sie die Operatoren ===
und !==
, um zwei Arrays in PHP zu vergleichen
Ähnlich wie die Operatoren ==
ermöglicht der Operator ===
den Vergleich zweier Werte auf Ähnlichkeit. Der Operator ==
gibt jedoch TRUE zurück, wenn das erste Array und das zweite Array im Kontext assoziativer Arrays dieselben Schlüssel/Wert-Paare haben.
===
gibt jedoch TRUE zurück, wenn das erste Array und das zweite Array die gleichen Schlüssel/Wert-Paare in der gleichen Reihenfolge und vom gleichen Typ haben.
Unter Verwendung der gleichen Codes im vorherigen Abschnitt werden wir einige Typänderungen vornehmen und sowohl die Operatoren ==
als auch ===
verwenden.
<?php
$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array('4', '5', 'hello', '2.45', '3.56');
// Check for equality
if ($arr1 == $arr2)
echo "Similar Arrays";
else
echo "Not Similar Arrays";
?>
Ausgabe:
Similar Arrays
Wenn wir den Operator ===
verwenden
<?php
$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array('4', '5', 'hello', '2.45', '3.56');
// Check for equality
if ($arr1 === $arr2)
echo "Similar Arrays";
else
echo "Not Similar Arrays";
?>
Wenn wir es mit assoziativen Arrays verwenden, sehen wir dasselbe Verhalten. Im folgenden Code vergleichen wir die beiden Arrays in Bezug auf ihren Wert und nicht auf ihre Schlüssel.
<?php
$arr1 = array("first" => 4, "second" => 5, "type" => 'hello');
$arr2 = array("one" => '4', "two" => '5', "third" => 'hello', );
// Check for equality
if ($arr1 === $arr2)
echo "Similar Arrays";
else
echo "Not Similar Arrays";
?>
Ausgabe:
Not Similar Arrays
Verwenden Sie die Funktion sort()
, um zwei Arrays zu vergleichen, wenn die Reihenfolge in PHP nicht wichtig ist
Für Fälle, in denen die Reihenfolge der Elemente nicht wichtig ist, können Sie die Funktion sort()
verwenden und die beiden Arrays vergleichen. Daher wenden Sie die Funktion sort()
auf beide Arrays an und vergleichen dann die sortierten Arrays auf Gleichheit.
<?php
$arr1 = array(4, 5, 'hello', 2.45, 3.56);
$arr2 = array(5, 2.45, 'hello', 3.56, 4);
// Sort the array elements
sort($arr1);
sort($arr2);
// Check for equality
if ($arr1 == $arr2)
echo "Both arrays are same, when sorted";
else
echo "Both arrays are not same, even when sorted";
?>
Ausgabe:
Both arrays are same, when sorted
Verwenden Sie die Funktion array_diff()
, um zwei Arrays zu vergleichen und den Unterschied in PHP zurückzugeben
Wir können zwei Arrays vergleichen und den Unterschied zurückgeben zwischen den beiden Arrays, und dazu verwenden wir die Funktion array_diff()
. Mit dieser Funktion können wir zwei Arrays vergleichen und ein Rückgabearray erwarten, das Elemente im ersten Array enthält, die nicht im zweiten Array enthalten sind.
<?php
$first = array("12", 34, true, 45, 67);
$second = array("12", 21, 89, 45);
print_r(array_diff($first, $second));
?>
Ausgabe:
Array
(
[1] 34
[2] 1
[4] 67
)
true
Sie müssen die Reihenfolge kennen, in der Sie die Arrays in den Funktionen array_diff()
platzieren, die ein Array zurückgeben. Wenn wir mit demselben Code die Reihenfolge der Arrays ändern, ist die folgende Ausgabe das Ergebnis.
Array
(
[1] 21
[2] 89
)
true
Und wenn es keinen Unterschied gibt, gibt der Code ein leeres Array zurück.
Verwenden Sie die Funktion array_intersect()
, um zwei Arrays zu vergleichen und die Übereinstimmungen in PHP zurückzugeben
Mit der Funktion array_intersect()
können Sie zwei Arrays vergleichen und die Elemente zurückgeben, die in beiden Elementen vorhanden sind. Unter Verwendung der gleichen zwei Arrays im vorherigen Abschnitt finden Sie 12
und 45
im Rückgabearray.
<?php
$first = array("12", 34, true, 45, 67);
$second = array("12", 21, 89, 45);
print_r(array_intersect($first, $second));
?>
Ausgabe:
Array
(
[0] 12
[3] 45
)
true
Olorunfemi is a lover of technology and computers. In addition, I write technology and coding content for developers and hobbyists. When not working, I learn to design, among other things.
LinkedInVerwandter Artikel - PHP Array
- Wie man die erste und letzte Iteration in einer foreach-Schleife in PHP bestimmt
- Wie man in PHP ein Array in eine Zeichenkette konvertiert
- Wie man das erste Element eines Arrays in PHP erhält
- Wie Sie ein Array in PHP echoen oder drucken
- Wie löscht man ein Element aus einem Array in PHP
- Wie man leere Array-Elemente in PHP entfernt