Heim  >  Artikel  >  Backend-Entwicklung  >  Wie man Arrays in PHP vergleicht und abfängt

Wie man Arrays in PHP vergleicht und abfängt

PHPz
PHPzOriginal
2023-04-26 10:23:25474Durchsuche

In PHP können wir einen Teil der Elemente erhalten, indem wir Arrays vergleichen und abfangen. Beim Vergleichen und Abfangen von Arrays werden die Elemente in einem Array mit den Elementen in einem anderen Array verglichen und die nicht übereinstimmenden Elemente entfernt, wodurch die Elemente abgefangen werden, die mit den Elementen im anderen Array übereinstimmen. In diesem Artikel wird erläutert, wie Sie mit PHP abgefangene Arrays vergleichen.

1. array_intersect-Funktion

PHP bietet eine array_intersect-Funktion, mit der verglichen werden kann, ob die Elemente in zwei oder mehr Arrays gleich sind. Diese Funktion gibt Elemente zurück, die in zwei oder mehr Arrays vorhanden sind, also den Schnittpunkt.

Das Folgende ist ein Beispiel für die Verwendung der Funktion array_intersect zum Vergleich abgefangener Arrays:

$a1 = array('a', 'b', 'c', 'd');
$a2 = array('b', 'd', 'f', 'h');
$result = array_intersect($a1, $a2);
print_r($result);

Im obigen Beispiel haben wir zwei Arrays $a1 und $a2 definiert und array_intersect verwendet Funktion zum Vergleichen dieser beiden Arrays. Diese Funktion gibt die Elemente zurück, die sowohl in $a1 als auch in $a2 vorhanden sind, nämlich „b“ und „d“, und speichert sie im $result-Array. Schließlich verwenden wir die print_r-Funktion, um den Inhalt des $result-Arrays auszugeben. Das Ausgabeergebnis ist:

Array
(
    [1] => b
    [3] => d
)

2. array_diff-Funktion

PHP stellt eine weitere Funktion array_diff bereit, die Kann verwendet werden. Vergleicht, ob die Elemente in zwei oder mehr Arrays unterschiedlich sind. Diese Funktion gibt die Elemente zurück, die nur im ersten Array vorhanden sind, also den Differenzsatz.

Das Folgende ist ein Beispiel für die Verwendung der Funktion array_diff zum Vergleich abgefangener Arrays:

$a1 = array('a', 'b', 'c', 'd');
$a2 = array('b', 'd', 'f', 'h');
$result = array_diff($a1, $a2);
print_r($result);

Im obigen Beispiel haben wir zwei Arrays $a1 und $a2 definiert und array_diff verwendet Funktion zum Vergleichen dieser beiden Arrays. Diese Funktion gibt die Elemente zurück, die nur in $a1 vorhanden sind, nämlich „a“ und „c“, und speichert sie im $result-Array. Abschließend verwenden wir die Funktion print_r, um den Inhalt des Arrays $result auszugeben:

Array
(
    [0] => a
    [2] => c
)

3 Verwenden Sie zusätzlich zur Verwendung die foreach-Schleife Mit den Funktionen array_intersect und array_diff können wir auch eine foreach-Schleife verwenden, um abgefangene Arrays zu vergleichen. Mit dieser Methode können die Vergleichsregeln angepasst werden und die Vergleichsergebnisse sind flexibler.

Das Folgende ist ein Beispiel für die Verwendung einer foreach-Schleife zum Vergleich abgefangener Arrays:

$a1 = array('a', 'b', 'c', 'd');
$a2 = array('b', 'd', 'f', 'h');
$result = array();
foreach ($a1 as $value1) {
    foreach ($a2 as $value2) {
        if ($value1 == $value2) {
            $result[] = $value1;
            break;
        }
    }
}
print_r($result);

Im obigen Beispiel definieren wir zwei Arrays $a1 und $a2 und verwenden foreach Schleife zum Vergleich der beiden Arrays. Zuerst durchlaufen wir jedes Element in $a1, dann durchlaufen wir jedes Element in $a2 und verwenden eine if-Anweisung, um zu vergleichen, ob sie gleich sind. Wenn sie gleich sind, speichern Sie das Element im Array $result und verwenden Sie die break-Anweisung, um die innere Schleife zu beenden. Schließlich verwenden wir die Funktion print_r, um den Inhalt des $result-Arrays auszugeben. Das Ausgabeergebnis ist:

Array
(
    [0] => b
    [1] => d
)

4. Zusammenfassung

Anhand des obigen Beispiels können wir sehen Dass PHP bereitstellt Es gibt verschiedene Methoden zum Vergleichen abgefangener Arrays, und wir können je nach spezifischen Anforderungen unterschiedliche Methoden auswählen. Unter diesen sind die Funktionen array_intersect und array_diff relativ einfach zu verwenden und für kleinere Arrays geeignet. Durch die Verwendung einer foreach-Schleife zum Vergleich können Sie die Vergleichsregeln anpassen und auf größere Arrays anwenden. Unabhängig von der verwendeten Methode können Sie Arrays einfach vergleichen und abfangen, um schnell die erforderlichen Elemente zu erhalten.

Das obige ist der detaillierte Inhalt vonWie man Arrays in PHP vergleicht und abfängt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn