Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann mithilfe von array_diff festgestellt werden, ob ein Array alle Werte eines anderen Arrays enthält?

Wie kann mithilfe von array_diff festgestellt werden, ob ein Array alle Werte eines anderen Arrays enthält?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-01 17:59:30874Durchsuche

How to Determine if an Array Contains All Values from Another Array using array_diff?

Array_diff verwenden, um die Einbeziehung von Array-Werten zu prüfen

Bestimmen, ob ein Array alle Werte aus einem anderen Array enthält, ist eine häufige Programmieraufgabe. Betrachten Sie das folgende Beispiel:

Gegebene Arrays $all und $search_this, definiert als:

<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>

Wir wollen überprüfen, ob $all alle in $search_this vorhandenen Elemente enthält.

Verwendung von array_diff für einen effizienten Vergleich

Um diesen Vergleich zu erreichen, besteht der effizienteste Ansatz darin, die Funktion array_diff zu verwenden, die ein Array von Elementen zurückgibt, die im ersten Array, aber nicht in gefunden wurden der zweite. Indem wir es auf unseren Fall anwenden, können wir aus $search_this ableiten, ob $all alle Werte enthält.

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

Wenn das resultierende Array leer ist (d. h. es wird kein Unterschied gefunden), bedeutet dies, dass $all enthält alle Werte von $search_this. Als Ergebnis wird $containsAllValues ​​auf true gesetzt. Andernfalls ist es falsch. Diese Methode löst das Problem effektiv mit minimaler Komplexität und einfacher Implementierung.

Das obige ist der detaillierte Inhalt vonWie kann mithilfe von array_diff 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