Aktueller Standort: Startseite> Neueste Artikel> Verwenden Sie Array_Diff_assoc (), um Elemente im Array mit denselben Schlüssel und Werten herauszufiltern

Verwenden Sie Array_Diff_assoc (), um Elemente im Array mit denselben Schlüssel und Werten herauszufiltern

M66 2025-05-17

In PHP wird die Funktion array_diff_assoc () verwendet, um die Schlüssel und Werte von zwei oder mehr Arrays zu vergleichen und ein neues Array zurückzugeben, das den Differenzteil enthält. Insbesondere überprüft es die Unterschiede zwischen Schlüsselwertpaaren im Array, und wenn die Schlüssel und Werte beider Arrays gleich sind, gelten die beiden Elemente als gleich. Daher kann die Funktion array_diff_assoc () uns helfen, Elemente in einem Array mit genau dem gleichen Schlüsselwert zu entfernen.

In diesem Artikel wird angezeigt, wie Sie die Funktion array_diff_assoc () verwenden, um Elemente mit genau dem gleichen Schlüsselwert in einem Array zu entfernen und einige gemeinsame Anwendungsszenarien anzuzeigen.

Funktionssyntax

 array_diff_assoc(array $array1, array $array2, array ...$arrays): array
  • $ Array1 : Das erste Array.

  • $ array2 : Das zweite Array.

  • $ arrays : Optional, mehrere Arrays können zusammen übergeben werden.

Diese Funktion gibt ein Array zurück, das Schlüsselwertpaare enthält, die sich in $ Array1 , jedoch nicht in $ array2 befinden.

Grundlegende Beispiele

Zeigen wir zuerst, wie Sie die Funktion array_diff_assoc () mit einem einfachen Beispiel verwenden.

 <?php
$array1 = [
    'a' => 1,
    'b' => 2,
    'c' => 3
];

$array2 = [
    'a' => 1,
    'b' => 2,
    'd' => 4
];

$result = array_diff_assoc($array1, $array2);
print_r($result);
?>

Ausgangsergebnis:

 Array
(
    [c] => 3
)

Im obigen Beispiel vergleicht Array_diff_assoc () Schlüsselwertepaare in Array1 und Array2 . Da A => 1 und B => 2 in beiden Arrays gleich sind, werden sie im Ergebnisarray nicht angezeigt. Letztendlich bleibt nur der Schlüssel C => 3 erhalten.

Anwendungsszenario: Entfernen Sie Elemente mit genau dem gleichen Schlüsselwert

Angenommen, Sie haben ein Array mit mehreren doppelten Schlüsselwertpaaren und möchten Elemente mit genau demselben Schlüsselwert entfernen, die durch Array_Diff_Assoc () erreicht werden können.

 <?php
$array = [
    'a' => 1,
    'b' => 2,
    'c' => 3,
    'a' => 1, // Elemente wiederholen
    'b' => 2, // Elemente wiederholen
];

$array_unique = array_diff_assoc($array, array());
print_r($array_unique);
?>

Ausgangsergebnis:

 Array
(
    [a] => 1
    [b] => 2
    [c] => 3
)

In diesem Beispiel hilft uns die Funktion array_diff_assoc () , doppelte Schlüsselwertpaare aus dem ursprünglichen Array zu entfernen und nur eindeutige Schlüsselwertpaare beizubehalten.

Dinge zu beachten

  1. Sowohl Schlüssel als auch Werte müssen übereinstimmen : Array_diff_assoc () prüft nicht nur, ob die Schlüssel gleich sind, sondern auch prüfen, ob die Werte gleich sind. Wenn die Schlüssel gleich sind, die Werte jedoch unterschiedlich sind, werden die Elemente als unterschiedlich angesehen.

  2. Im Gegensatz zu Array_DIFF () : Array_Diff () vergleicht und ignoriert nur Werte und ignoriert Tasten. array_diff_assoc () vergleicht sowohl Schlüssel als auch Werte, sodass Unterschiede strenger gefiltert werden können.

  3. Mehrfacharray -Vergleich : Mehrere Arrays können übergeben werden, Array_Diff_assoc () gibt die Unterschiede in diesen Arrays zurück.

Abschluss

Die Funktion array_diff_assoc () ist ein sehr nützliches Werkzeug, insbesondere wenn Sie Arrays vergleichen und doppelte Elemente entfernen müssen. Es kann uns helfen, die gewünschten Elemente auf der Grundlage der genauen Übereinstimmung von Schlüssel und Werten herauszufiltern. Beherrschen Sie, wie diese Funktion verwendet wird, Sie können Ihnen helfen, Daten in Arrays effizienter zu verarbeiten.

Wenn Sie Fragen zur Verwendung anderer PHP -Funktionen haben, fragen Sie uns bitte weiter!