Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich effizient nach überlappenden Elementen zwischen zwei PHP-Arrays suchen?

Wie kann ich effizient nach überlappenden Elementen zwischen zwei PHP-Arrays suchen?

DDD
DDDOriginal
2024-12-17 02:58:25205Durchsuche

How Can I Efficiently Check for Overlapping Elements Between Two PHP Arrays?

Überlappung in Array-Elementen überprüfen

In PHP stoßen wir auf Situationen, in denen festgestellt werden muss, ob Elemente aus einem Array in einem anderen vorhanden sind . Betrachten Sie die folgenden Arrays:

Personen:

$people = [3, 20];

Gesuchte Kriminelle:

$criminals = [2, 4, 8, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20];

Unser Ziel ist es Stellen Sie fest, ob Personen aus der Gruppe „Personen“ auch zu den „Gesuchten Kriminellen“ gehören. Aufstellung.

Lösung: array_intersect()

Die Funktion array_intersect() von PHP erweist sich in diesem Szenario als nützlich. Es vergleicht zwei Arrays und gibt ein Array zurück, das die Elemente enthält, die in beiden vorkommen. Wenn das resultierende Array nicht leer ist, bedeutet dies mindestens ein gemeinsam genutztes Element.

$isPresent = !empty(array_intersect($people, $criminals));

In diesem Beispiel wird $isPresent auf true gesetzt, da der Wert „20“ in beiden Arrays vorhanden ist.

Zusätzliche Hinweise:

  • Die !empty()-Prüfung stellt ein Element ungleich Null sicher Zählen Sie im überschnittenen Array, bevor Sie die Überlappung bestimmen.
  • Wenn wir gezielt prüfen möchten, ob es keine Überlappungen gibt, könnten wir empty(array_intersect($people, $criminals)) verwenden.

Das obige ist der detaillierte Inhalt vonWie kann ich effizient nach überlappenden Elementen zwischen zwei PHP-Arrays suchen?. 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