PHP ist eine beliebte Programmiersprache und auch ihre Array-Funktionen sind sehr leistungsfähig. Wenn Sie die Schlüsselnamen zweier Arrays vergleichen müssen, können Sie die Funktion array_diff_key() verwenden. Diese Funktion kann uns helfen, die Schlüsselnamen herauszufinden, die im ersten Array, aber nicht im zweiten Array vorhanden sind, und die Unterschiede zwischen den Arrays zu vergleichen. In diesem Artikel wird detailliert beschrieben, wie die Funktion array_diff_key() verwendet wird. Die grundlegende Verwendung der Syntax der Funktion
array_diff_key() lautet:
array array_diff_key ( array $array1 , array $array2 [, array $... ] )
Diese Funktion empfängt mehrere Arrays als Parameter, wobei der erste Parameter das ursprüngliche Array und die nachfolgenden Parameter die zu vergleichenden Arrays sind. Diese Funktion gibt ein neues Array zurück, das Schlüsseln entspricht, die im ersten Array, aber nicht in anderen Arrays vorhanden sind.
Zum Beispiel haben wir zwei Arrays:
$array1 = array('name' => 'Peter', 'age' => 20, 'address' => 'Shanghai'); $array2 = array('name' => 'Mike', 'sex' => 'male', 'address' => 'Beijing');
Wir können diese beiden Arrays mit dem folgenden Code vergleichen:
$result = array_diff_key($array1, $array2); print_r($result);
Die Ausgabe ist wie folgt:
Array ( [age] => 20 )
Wie aus dem Ergebnis ersichtlich ist, erhalten wir ein neues Array in welches nur das Element mit dem Schlüsselnamen „age“ enthält, da „age“ nur in $array1 und nicht in $array2 existiert.
Es ist zu beachten, dass die Funktion array_diff_key() nur die Schlüsselnamen des Arrays vergleicht, nicht die Schlüsselwerte. Selbst wenn daher einige Schlüssel in den beiden Arrays demselben Schlüsselwert entsprechen, listet die Funktion sie dennoch als Unterschiede auf. Die Funktion
array_diff_key() unterstützt auch den Vergleich von Unterschieden zwischen mehreren Arrays. Wir haben zum Beispiel drei Arrays:
$array1 = array('name' => 'Peter', 'age' => 20, 'address' => 'Shanghai'); $array2 = array('name' => 'Mike', 'sex' => 'male', 'address' => 'Beijing'); $array3 = array('name' => 'Lucas', 'age' => 22, 'hobby' => 'swimming');
Wir können diese drei Arrays mit dem folgenden Code vergleichen:
$result = array_diff_key($array1, $array2, $array3); print_r($result);
Die Ausgabe lautet wie folgt:
Array ( [age] => 20 )
Wie aus dem Ergebnis ersichtlich ist, erhalten wir ein neues Array, das nur enthält Schlüsselnamen sind ein Element von „Alter“. Dies liegt daran, dass „Alter“ nur in $array1 und nicht in den anderen beiden Arrays vorhanden ist.
Die Funktion array_diff_key() ist eine sehr nützliche PHP-Array-Funktion, die uns helfen kann, schnell den Unterschied zwischen zwei oder mehr Arrays zu finden. Bei der Verwendung dieser Funktion müssen wir beachten, dass sie nur die Schlüsselnamen des Arrays vergleicht, nicht die Schlüsselwerte.
Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung zur Verwendung von array_diff_key() der PHP-Array-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!