Heim  >  Artikel  >  Backend-Entwicklung  >  Verwenden Sie die PHP-Funktion array_intersect_key(), um den Schnittpunkt zu ermitteln

Verwenden Sie die PHP-Funktion array_intersect_key(), um den Schnittpunkt zu ermitteln

WBOY
WBOYOriginal
2023-06-27 19:31:391001Durchsuche

Bei der Entwicklung mit PHP geht es oft um die Verarbeitung von Arrays. Unter diesen ist es eine häufige Aufgabe, den Schnittpunkt zweier Arrays zu ermitteln. PHP bietet eine sehr praktische Funktion array_intersect_key(), um dieses Problem zu lösen. Die Funktion

array_intersect_key() dient dazu, nur Elemente mit demselben Schlüsselnamen in zwei oder mehr Arrays beizubehalten und das Ergebnisarray zurückzugeben. Einfach ausgedrückt: Es nimmt den Schnittpunkt zweier Arrays, vergleicht aber nur deren Schlüssel und nicht deren Werte.

Die Parameter dieser Funktion sind zwei oder mehr Arrays, die verglichen werden müssen, wobei es sich um eines oder mehrere handeln kann. Hier ist die Syntax der Funktion:

array_intersect_key(array1, array2 [, array3...])

wobei Array1 das erste zu vergleichende Array ist, Array2 das zweite Array ist und Array3 mehrere Arrays umfassen kann. Wenn array3 und weitere Arrays nicht angegeben sind, werden standardmäßig nur die ersten beiden Arrays verglichen.

Das Folgende ist ein einfaches Beispiel, das die Verwendung der Funktion array_intersect_key() zeigt:

$array1 = array('a'=>'apple', 'b'=>'banana', 'c'=>'cherry');
$array2 = array('a'=>'orange', 'c'=>'cherry', 'd'=>'dates');
$result = array_intersect_key($array1, $array2);
print_r($result);

Im obigen Beispiel definieren wir zwei Arrays $array1 und $array2, die jeweils einige Schlüssel-Wert-Paare enthalten. Dann haben wir die Funktion array_intersect_key() aufgerufen und dabei $array1 und $array2 als Parameter übergeben. Diese Funktion gibt ein Ergebnisarray zurück, das Elemente mit demselben Schlüssel in $array1 und $array2 enthält. Verwenden Sie abschließend die Funktion print_r(), um das Ergebnisarray auszugeben.

Führen Sie das obige Beispiel aus und Sie erhalten die folgende Ausgabe:

Array
(
    [a] => apple
    [c] => cherry
)

Wie Sie sehen können, gibt die Funktion ein neues Array zurück, das nur die beiden Elemente mit den gleichen Schlüsselnamen a und c in $array1 und $array2 enthält.

Es ist zu beachten, dass diese Funktion eher Schlüsselnamen als Schlüsselwerte vergleicht. Wenn die beiden Arrays denselben Schlüsselnamen, aber unterschiedliche Werte haben, verwendet die Funktion den Wert in Array 1 als Wert im Ergebnisarray.

Bei Verwendung der Funktion array_intersect_key() müssen Sie außerdem auf folgende Punkte achten:

  1. Diese Funktion vergleicht nur Schlüsselnamen und keine Schlüsselwerte. Wenn Sie Schlüsselwerte vergleichen müssen, verwenden Sie die Funktion array_intersect().
  2. Wenn zwei oder mehr Arrays denselben Schlüsselnamen, aber unterschiedliche Schlüsselwerte haben, enthält das von dieser Funktion zurückgegebene Ergebnis den Wert, der dem Schlüssel im ersten Array entspricht.
  3. Wenn kein identischer Schlüsselname gefunden wird, gibt die Funktion ein leeres Array zurück.

Zusammenfassend lässt sich sagen, dass die Funktion array_intersect_key() eine sehr praktische Funktion ist, mit der sich leicht die Schnittmenge von zwei oder mehr Arrays ermitteln lässt und die in der PHP-Entwicklung sehr häufig verwendet wird.

Das obige ist der detaillierte Inhalt vonVerwenden Sie die PHP-Funktion array_intersect_key(), um den Schnittpunkt zu ermitteln. 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