In PHP ist Array_diff_key () eine Funktion, mit der der Differenzsatz von zwei Arrays berechnet wird. Es gibt ein Array zurück, das alle Schlüsselwertpaare enthält, die im ersten Array, jedoch nicht im zweiten Array, vorhanden sind. Diese Funktion vergleicht sich basierend auf den Schlüssel des Arrays, nicht auf den Werten.
array_diff_key(array $array1, array $array2, array ...$arrays): array
$ array1
Dies ist das erste Array, das verglichen wird.
$ array2
Dies ist das zweite Array, das mit $ Array1 verglichen wird. Die Schlüssel in diesem Array werden von $ Array1 entfernt.
$ arrays (optional)
Weitere Arrays können zum Vergleich weitergegeben werden. Array_Diff_key () entfernen Tasten aus diesen Arrays aus $ Array1 .
Diese Funktion gibt ein neues Array zurück, das alle Schlüsselwertpaare enthält, die in $ array1, jedoch nicht in $ array2 oder anderen bestandenen Arrays vorhanden sind, vorhanden sind.
Hier ist ein Beispiel mit der Funktion array_diff_key () :
<?php
$array1 = [
"apple" => 1,
"banana" => 2,
"cherry" => 3
];
$array2 = [
"banana" => 2,
"cherry" => 3
];
$result = array_diff_key($array1, $array2);
print_r($result);
?>
Ausgabe:
Array
(
[apple] => 1
)
In diesem Beispiel vergleicht Array_diff_key () $ Array1 und $ array2 und gibt ein neues Array zurück, das den Schlüssel "Apple" enthält, da dieser Schlüssel nur in $ array1 und nicht in $ array2 vorhanden ist.
Sie können auch mehrere Arrays an Array_Diff_key () übergeben, in dem die Schlüssel in $ array1 und allen anderen Arrays vergleicht werden, wobei die in $ array1 vorhandenen Schlüsselwertepaare zurückgegeben werden, die jedoch nicht in anderen Arrays enthalten sind.
<?php
$array1 = [
"apple" => 1,
"banana" => 2,
"cherry" => 3,
"date" => 4
];
$array2 = [
"banana" => 2,
"cherry" => 3
];
$array3 = [
"apple" => 1,
"date" => 4
];
$result = array_diff_key($array1, $array2, $array3);
print_r($result);
?>
Ausgabe:
Array
(
[banana] => 2
)
In diesem Beispiel vergleicht Array_diff_key () $ Array1 und $ array2 , $ array3 und kehrt ein Array zurück, das den Schlüssel "Banane" enthält, da es nur in $ array1 erscheint, aber in $ array2 und $ array3 .
array_diff_key () ist ein wichtiger Vergleich, kein Wert. Daher berücksichtigt es die Werte im Array nicht, sondern arbeitet nur auf den Schlüssel.
Wenn Sie mehrere Arrays übergeben, vergleicht die Funktion die Schlüssel dieser Arrays und gibt ein Array zurück, das die eindeutigen Schlüssel in $ array1 enthält.
Wenn in allen Arrays ein Schlüssel vorhanden ist, enthält das Ergebnis diesen Schlüssel nicht.
Wenn Sie eine detailliertere Dokumentation in der Funktion array_diff_key () sehen möchten, lesen Sie den folgenden Link: