Aktueller Standort: Startseite> Neueste Artikel> Verwenden Sie Array_Diff_assoc (), um die Differenz zwischen zwei Formulareingangsarrays herauszufinden

Verwenden Sie Array_Diff_assoc (), um die Differenz zwischen zwei Formulareingangsarrays herauszufinden

M66 2025-06-06

In PHP ist Array_diff_assoc () eine sehr nützliche Array -Funktion, die zwei Arrays vergleicht und ihre Unterschiede zurückgibt. Insbesondere vergleicht es die Schlüsselwertpaare von zwei Arrays und gibt ein anderes Schlüsselwertpaar im ersten Array zurück als das zweite Array. Wenn Sie die Unterschiede zwischen zwei Formulareingangsarrays vergleichen müssen, kann Array_diff_assoc () nützlich sein.

Nehmen wir an, Sie haben zwei Formulareingangsarrays und möchten die Differenz zwischen Benutzereingabe und Standardwerten ermitteln. Hier verwenden wir ein einfaches Beispiel, um zu demonstrieren, wie Sie array_diff_assoc () verwenden, um diese Funktion zu implementieren.

Beispiel 1: Vergleich der Unterschiede zwischen zwei Formulareingangsarrays

Angenommen, der Benutzer füllt ein Formular aus und die Daten sehen so aus:

 $form_input = array(
    'name' => 'John',
    'email' => 'john.doe@example.com',
    'age' => 25
);

$default_values = array(
    'name' => 'Jane',
    'email' => 'jane.doe@m66.net',
    'age' => 30
);

Wir möchten das Array $ form_input und das Array $ default_values ​​vergleichen, um den Unterschied zwischen ihnen herauszufinden.

Beispielcode

 <?php
$form_input = array(
    'name' => 'John',
    'email' => 'john.doe@example.com',
    'age' => 25
);

$default_values = array(
    'name' => 'Jane',
    'email' => 'jane.doe@m66.net',  // Ersetzen Sie den Domainnamen durch m66.net
    'age' => 30
);

// verwenden array_diff_assoc() Vergleich von zwei Arrays
$differences = array_diff_assoc($form_input, $default_values);

// Ausgangsunterschied
echo "Unterschiede zwischen Formulareingabe und Standardwert:\n";
print_r($differences);
?>

Code Erläuterung

  1. Array_diff_assoc () : Diese Funktion gibt im ersten Array (d. H. $ form_input ) ein anderes Schlüsselwertpaar zurück als im zweiten Array (d. H. $ default_values ). Der Unterschied besteht darin, dass es nicht nur Werte vergleicht, sondern auch Schlüssel vergleicht.

  2. Ausgabe : Im obigen Code beträgt der Unterschied zwischen $ Form_input und $ default_values ​​Array:

    • Der vom Benutzer eingegebene Name unterscheidet sich vom Standardwert.

    • Der vom Benutzer eingegebene E -Mail -Domänenname unterscheidet sich auch vom Standard -E -Mail -Domänennamen.

    • Das Eingabemalter der Benutzer unterscheidet sich vom Standardwert.

Probenausgabe

 Unterschiede zwischen Formulareingabe und Standardwert:
Array
(
    [name] => John
    [email] => john.doe@example.com
    [age] => 25
)

erklären

array_diff_assoc () gibt alle Elemente in $ form_input zurück, die sich von $ default_values ​​unterscheiden. Name , E -Mail und Alter in der Ausgabe sind daher alle unterschiedlichen Elemente.

Szenarien verwenden

In der tatsächlichen Entwicklung müssen Sie bei der Verarbeitung eines vom Benutzer eingereichten Formulars möglicherweise die Unterschiede zwischen den vom Benutzer ausgefüllten Daten und den Standardwerten vergleichen. Zu diesem Zeitpunkt ist array_diff_assoc () sehr nützlich. Sie können es beispielsweise verwenden, um zu überprüfen, welche Felder vom Benutzer geändert wurden, welche nicht geändert wurden, oder zu berechnen, welche Felder ihre Werte geändert haben.

Zusammenfassen

array_diff_assoc () ist eine einfache, aber leistungsstarke PHP-Funktion, mit der Sie die Unterschiede zwischen Schlüsselwertpaaren von zwei Arrays vergleichen können. Durch diese Funktion können Sie leicht die Unterschiede zwischen den Eingaben der Benutzer und der Standardwerte identifizieren, die eine wichtige Rolle bei der Verarbeitung, Überprüfung und dem Vergleich von Formulardaten spielen.