Heim > Artikel > Backend-Entwicklung > Ist das PHP-Array im Array?
In der PHP-Programmierung ist Array eine gängige Datenstruktur, die häufig zum Speichern und Verarbeiten großer Datenmengen verwendet wird. In manchen Fällen muss festgestellt werden, ob sich ein Array innerhalb eines anderen Arrays befindet. In diesem Artikel stellen wir vor, wie Sie mit PHP feststellen können, ob sich ein Array in einem anderen Array befindet.
Zunächst müssen wir die Darstellung von Arrays in PHP verstehen. Im Allgemeinen können PHP-Arrays auf zwei Arten erstellt werden:
1. Erstellen Sie mit dem Schlüsselwort array:
$array1 = array(“apple”, “orange”, “banana”);
2. Erstellen Sie mit eckigen Klammern []: #🎜🎜 #
$array2 = [“apple”, “orange”, “banana”];Beide Methoden können ein Array erstellen, das mehrere Elemente enthält. Um festzustellen, ob sich ein Array in einem anderen Array befindet, müssen wir die in PHP integrierte Funktion in_array() verwenden. Die Syntax lautet wie folgt:
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )Darunter ist der Parameter $needle der zu findende Wert, der Parameter $haystack ist das zu durchsuchende Array und der Parameter $strict gibt an, ob kongruent verwendet werden soll Vergleich. Die Funktion gibt einen booleschen Wert zurück, der das Suchergebnis darstellt. Durch die Funktion in_array() können wir leicht feststellen, ob sich ein Wert in einem Array befindet. Der folgende Code ermittelt beispielsweise, ob sich der Wert „apple“ im Array $array1 befindet:
if ( in_array(“apple”, $array1) ) { echo “yes”; } else { echo “no”; }Wenn sich „apple“ im Array $array1 befindet, gibt das Programm „yes“ aus, andernfalls „yes“. wird „nein“ ausgeben. Wenn wir also feststellen möchten, ob sich ein Array in einem anderen Array befindet, wie erreichen wir das? Schauen wir uns ein konkretes Beispiel an:
$array1 = [“apple”, “orange”, “banana”]; $array2 = [“orange”, “banana”];Im obigen Beispiel ist $array2 eine Teilmenge von $array1, da alle Elemente in $array2 in $array1 erschienen sind. Um festzustellen, ob sich $array2 in $array1 befindet, müssen wir alle Elemente in $array2 durchlaufen und feststellen, ob sie alle in $array1 erscheinen. Dies können wir durch eine for-Schleife erreichen:
$flag = true; for ($i=0; $i<count($array2); $i++) { if( !in_array($array2[$i], $array1) ) { $flag = false; break; } } if ( $flag ) { echo “yes”; } else { echo “no”; }Im obigen Code setzen wir zunächst eine $flag-Variable, um die Situation zu markieren, in der alle Elemente gefunden wurden. Dann durchlaufen wir alle Elemente in $array2 und verwenden die Funktion in_array(), um zu bestimmen, ob sie alle in $array1 erscheinen. Wenn ein Element gefunden wird, das sich nicht in $array1 befindet, setzen Sie die Variable $flag auf false und verlassen Sie die Schleife. Abschließend wird das Ergebnis basierend auf dem Wert der Variablen $flag ausgegeben. Diese Methode ist nur eine einfache Art der Beurteilung, die normalerweise unsere Bedürfnisse erfüllen kann. Bei der tatsächlichen Arbeit können wir jedoch auf komplexere Situationen stoßen, zum Beispiel: Das Array enthält Elemente, die ein anderes Array sind, oder das Array enthält mehrdimensionale Arrays usw. In diesen Situationen müssen wir komplexere Beurteilungsmethoden verwenden, beispielsweise die Verwendung von Rekursions- oder Rückruffunktionen. Zusammenfassend lässt sich sagen, dass die Beurteilung, ob sich ein Array in einem anderen Array in PHP befindet, im Wesentlichen darin besteht, das Array zu durchlaufen und die darin enthaltenen Elemente zu vergleichen. In praktischen Anwendungen können wir die Funktion in_array () oder komplexere Beurteilungsmethoden verwenden, um diese Funktion für unterschiedliche Anforderungen zu implementieren.
Das obige ist der detaillierte Inhalt vonIst das PHP-Array im Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!