Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann in PHP festgestellt werden, ob ein Array alle Werte eines anderen Arrays enthält?

Wie kann in PHP festgestellt werden, ob ein Array alle Werte eines anderen Arrays enthält?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-02 11:32:02864Durchsuche

How to Determine if One Array Contains All Values of Another Array in PHP?

Array-Containment mit Array_diff bestimmen

Im Bereich der Programmierung spielen Datenstrukturen eine entscheidende Rolle bei der Informationsverwaltung. Arrays sind eine gängige Datenstruktur und ermöglichen das sequentielle Speichern und Zugreifen auf Elemente. Eine grundlegende Aufgabe bei der Array-Manipulation besteht darin, zu überprüfen, ob ein Array alle in einem anderen Array vorhandenen Werte enthält. Diese Abfrage erfordert eine effiziente und elegante Lösung.

Betrachten Sie die folgende Situation: Es sind zwei Arrays, $all und $search_this, angegeben. Unser Ziel ist es zu beurteilen, ob $all alle in $search_this gefundenen Werte umfasst.

<code class="php">$all = array(
    0 => 307,
    1 => 157,
    2 => 234,
    3 => 200,
    4 => 322,
    5 => 324
);
$search_this = array(
    0 => 200,
    1 => 234
);</code>

Ein einfacher und effektiver Ansatz mit Array_diff

Die einfachste Lösung nutzt die PHP-Funktion array_diff. Diese Funktion vergleicht zwei Arrays und gibt ein Array zurück, das Elemente enthält, die im ersten Array, aber nicht im zweiten Array vorhanden sind. Wenn wir array_diff($search_this, $all) aufrufen, wird ein Array erstellt, das aus Werten in $search_this besteht, die in $all fehlen.

Nun soll festgestellt werden, ob $all alle Werte von $search_this enthält , prüfen wir einfach, ob das Ergebnis von array_diff leer ist. Wenn das Differenzarray leer ist, bedeutet dies, dass $all alle Werte von $search_this enthält, und wir geben true zurück. Andernfalls geben wir false zurück.

<code class="php">$containsAllValues = !array_diff($search_this, $all);</code>

Diese Methode ist sowohl prägnant als auch effizient, da sie die in PHP integrierte Array-Vergleichsfunktion nutzt. Indem wir die inhärenten Fähigkeiten der Sprache nutzen, können wir die Implementierung komplexer Iterations- oder Vergleichsalgorithmen selbst vermeiden.

Das obige ist der detaillierte Inhalt vonWie kann in PHP festgestellt werden, ob ein Array alle Werte eines anderen Arrays enthält?. 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