Detaillierte Erläuterung der Verwendung der PHP-Funktion array_diff_key()

WBOY
Freigeben: 2023-06-27 10:26:01
Original
2033 Leute haben es durchsucht

In PHP ist Array ein sehr häufiger Datentyp. In vielen Fällen müssen wir verschiedene Arrays vergleichen und verarbeiten. Die Funktion array_diff_key() in PHP kann sehr bequem die Schlüsselwerte in zwei oder mehr Arrays vergleichen und die Differenzverarbeitung zwischen Arrays implementieren. In diesem Artikel werden die Verwendung und Beispiele der PHP-Funktion array_diff_key() im Detail vorgestellt.

1. Einführung in die Funktion array_diff_key()

Die Funktion array_diff_key() ist eine der integrierten Funktionen von PHP. Seine Funktion besteht darin, die Schlüssel zu finden, die im ersten Array, aber nicht in einem oder mehreren nachfolgenden Arrays vorhanden sind, und ein aus diesen Schlüsseln bestehendes Array zurückzugeben.

Die Syntax dieser Funktion lautet wie folgt:

array array_diff_key ( array $array1 , array $array2 [, array $... ] )

Unter diesen ist array1 das ursprüngliche Array, das verglichen werden muss, und array2 ist das Zielarray, das verglichen werden muss. Wenn ein drittes Array angegeben ist, vergleicht die Funktion weiterhin mit diesem Array usw. bis zum letzten Array.

2. Der Rückgabewert der Funktion array_diff_key()

Die Funktion array_diff_key() gibt einen Array zurück, der im ersten Array, aber nicht in einem oder mehreren nachfolgenden Arrays vorhanden ist Das zurückgegebene Array ist der Schlüsselname des ursprünglichen Arrays und der Schlüsselwert des zurückgegebenen Arrays ist der Schlüsselwert des ursprünglichen Arrays.

Wenn das ursprüngliche Array und das Zielarray genau gleich sind, gibt die Funktion array_diff_key() ein leeres Array zurück.

3. Anwendungsbeispiele der Funktion array_diff_key()

Als nächstes demonstrieren wir die Verwendung der Funktion array_diff_key() anhand mehrerer Beispiele.

  1. Beispiel 1

Angenommen, wir haben ein ursprüngliches Array $firstArray und ein Zielarray $targetArray, wie unten gezeigt:

$firstArray = array('name'=>'Tom', 'age'=>25, 'sex'=>'male', 'hobby'=>'reading');
$targetArray = array('age'=>20, 'hobby'=>'sport');
Nach dem Login kopieren

Jetzt wollen wir die Schlüsselnamen finden, die in $firstArray, aber nicht in $targetArray vorhanden sind. Sie können den folgenden Code verwenden:

$result = array_diff_key($firstArray, $targetArray);
print_r($result);
Nach dem Login kopieren

Die Ausführungsausgabe lautet:

Array
(
    [name] => Tom
    [sex] => male
)
Nach dem Login kopieren

Hier können wir sehen, dass die Schlüsselnamen, die in $firstArray, aber nicht in $targetArray vorhanden sind, „name“ und „sex“ enthalten, die schließlich sind im Array zurückgegeben. Enthält nur diese Schlüsselnamen.

  1. Beispiel 2

Wir können auch die Schlüsselwerte mehrerer Arrays gleichzeitig vergleichen, wie unten gezeigt:

$firstArray = array('name'=>'Tom', 'age'=>25, 'sex'=>'male', 'hobby'=>'reading');
$targetArray1 = array('age'=>20, 'hobby'=>'sport');
$targetArray2 = array('name'=>'Jack', 'hobby'=>'music');
$result = array_diff_key($firstArray, $targetArray1, $targetArray2);
print_r($result);
Nach dem Login kopieren

Die Ausführungsausgabe lautet:

Array
(
    [age] => 25
    [sex] => male
)
Nach dem Login kopieren

Ähnlich findet diese Funktion alle passenden Schlüsselnamen $firstArray , ist jedoch in keinem nachfolgenden Zielarray vorhanden und gibt ein Array zurück, das diese Schlüsselnamen enthält.

  1. Beispiel 3

Wir können auch eine Schleife verwenden, um mehrere Arrays zu vergleichen, wie unten gezeigt:

$firstArray = array('name'=>'Tom', 'age'=>25, 'sex'=>'male', 'hobby'=>'reading');
$targetArray1 = array('age'=>20, 'hobby'=>'sport');
$targetArray2 = array('name'=>'Jack', 'hobby'=>'music');
$targetArray3 = array('name'=>'Tom', 'age'=>25);
$targetArrays = array($targetArray1, $targetArray2, $targetArray3);
$result = $firstArray;
foreach($targetArrays as $targetArray){
    $result = array_diff_key($result, $targetArray);
}
print_r($result);
Nach dem Login kopieren

Das Ausgabeergebnis der Ausführung lautet:

Array
(
    [sex] => male
    [hobby] => reading
)
Nach dem Login kopieren

Hier verwenden wir eine Schleife, um mehrere Arrays zu vergleichen, zuerst die Ergebnisse Das Array wird als ursprüngliches Array $firstArray initialisiert, dann werden alle Zielarrays einzeln verglichen und die Funktion array_diff_key() wird verwendet, um alle Schlüsselnamen zu finden, die im Zielarray nicht vorhanden sind.

4. Zusammenfassung

Anhand der obigen Beispiele können wir sehen, dass die Funktion array_diff_key() sehr einfach und sehr praktisch ist und uns leicht dabei helfen kann, Vergleiche und Differenzverarbeitungen zwischen mehreren Arrays durchzuführen. Kurz gesagt, die Beherrschung der Verwendung dieser Funktion wird uns helfen, Arrays in PHP besser zu handhaben und zu verwalten.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Verwendung der PHP-Funktion array_diff_key(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage