Aktueller Standort: Startseite> Neueste Artikel> Wie verwendet ich Array_Diff_assoc (), um festzustellen, ob zwei Arrays in Schlüsselwertpaaren genau gleich sind?

Wie verwendet ich Array_Diff_assoc (), um festzustellen, ob zwei Arrays in Schlüsselwertpaaren genau gleich sind?

M66 2025-06-06

In PHP ist Array-Vergleich eine häufige Operation, insbesondere wenn wir feststellen müssen, ob die Schlüsselwertepaare von zwei Arrays genau gleich sind. PHP bietet eine Vielzahl von integrierten Funktionen zum Vergleich von Arrays, bei denen die Funktion array_diff_assoc () besonders für diese Situation geeignet ist. In diesem Artikel wird vorgestellt, wie Sie Array_Diff_assoc () verwenden, um festzustellen, ob zwei Arrays in Schlüsselwertpaaren genau gleich sind.

Was ist Array_diff_assoc () ?

Die Funktion array_diff_assoc () wird verwendet, um Schlüsselwertpaare von zwei Arrays zu vergleichen, wobei ein Array mit Schlüsselwertpaaren im ersten Array, jedoch nicht im zweiten Array, zurückgegeben wird. Mit anderen Worten, es wird prüft, ob die Schlüsselnamen und -werte der beiden Arrays genau gleich sind, und gibt den nicht übereinstimmenden Teil zurück.

Funktionsprototyp

 array_diff_assoc(array $array1, array $array2): array

Parameterbeschreibung :

  • $ Array1 : Das erste Array.

  • $ array2 : Das zweite Array.

Rückgabewert :

  • Gibt ein neues Array zurück, das Schlüsselwertpaare enthält, die in $ array1 vorhanden sind, aber nicht in $ array2 sind. Wenn die Tasten und Werte der beiden Arrays genau übereinstimmen, ist das zurückgegebene Ergebnis ein leeres Array.

Verwenden Sie Array_Diff_assoc (), um festzustellen, ob das Array vollständig gleich ist

Wenn wir feststellen möchten, ob die Schlüsselwertpaare von zwei Arrays genau gleich sind, können wir dies auf folgende Weise tun:

  1. Verwenden Sie array_diff_assoc (), um zwei Arrays zu vergleichen und zu überprüfen, ob es unterschiedliche Schlüsselwertpaare gibt.

  2. Wenn array_diff_assoc () ein leeres Array zurückgibt, bedeutet dies, dass die Schlüsselwertpaare der beiden Arrays genau gleich sind.

Beispielcode

 <?php
// Beispielarray
$array1 = [
    'name' => 'John',
    'age' => 25,
    'email' => 'john@example.com',
];

$array2 = [
    'name' => 'John',
    'age' => 25,
    'email' => 'john@m66.net',
];

// verwenden array_diff_assoc Vergleiche Arrays
$result = array_diff_assoc($array1, $array2);

// Bestimmen Sie, ob zwei Arrays genau gleich sind
if (empty($result)) {
    echo "Zwei Arrays sind in Schlüsselwertpaaren genau gleich。\n";
} else {
    echo "Zwei Arrays haben ungleiche Teile auf Schlüsselwertpaaren:\n";
    print_r($result);
}
?>

Code Parsen :

  1. Wir definieren zwei Arrays $ Array1 und $ Array2 , wobei der Wert des E -Mail -Schlüssels von $ array2 von $ array1 unterschiedlich ist.

  2. Verwenden Sie Array_Diff_assoc ($ array1, $ array2), um diese beiden Arrays zu vergleichen. Da die E -Mail -Schlüsselwerte unterschiedlich sind, gibt die Funktion ein Array zurück, das ungleiche Teile enthält.

  3. Wenn das Rückgabeergebnis leer ist, bedeutet dies, dass die beiden Arrays bei Schlüsselwertpaaren genau gleich sind. Andernfalls können wir die zurückgegebenen Ergebnisse anzeigen und die Unterschiede herausfinden.

Probenausgabe

 Zwei Arrays haben ungleiche Teile auf Schlüsselwertpaaren:
Array
(
    [email] => john@example.com
)

Warum verwenden Sie array_diff_assoc () ?

Wenn Array_Diff_assoc () Arrays vergleicht, werden nicht nur die Schlüssel des Arrays verglichen, sondern die Werte, die jedem Schlüssel entsprechen, werden auch verglichen. Auf diese Weise kann es genau bestimmen, ob die beiden Arrays vollständig gleich sind, und vermeiden die potenziellen Probleme, die durch einfaches Verwendung des Operators == oder === verursacht werden. Es ist ein sehr praktisches Array -Vergleichsinstrument, insbesondere wenn es notwendig ist, zwei Arrays genau zu vergleichen.

Zusammenfassung

Durch die Verwendung der Funktion array_diff_assoc () können PHP-Entwickler die Differenz zwischen zwei Arrays in Schlüsselwertpaaren problemlos beurteilen. Wenn das zurückgegebene leere Array, sind die beiden Arrays genau bei Schlüsselwertpaaren gleich. Wenn das zurückgegebene Ergebnis Schlüsselwertpaare enthält, bedeutet dies, dass es einen Unterschied zwischen den beiden Arrays gibt. In praktischen Anwendungen eignet sich diese Funktion sehr für die Datenüberprüfung, die Konfigurationsüberprüfung und andere Szenarien.