In PHP begegnen Sie bei der Verarbeitung von Arrays häufig Situationen, in denen Schlüsselnamen inkonsistent sind oder ein einheitliches Format erfordern. Array_Change_key_Case () ist eine sehr praktische Funktion, mit der wir alle Schlüsselnamen eines Arrays schnell in Groß- oder Kleinbuchstaben umwandeln können. Array_combine () kann zwei Arrays in ein neues Array rekombinieren, das einem Schlüsselwert entspricht.
In diesem Artikel wird vorgestellt, wie diese beiden Funktionen kombiniert werden können, um nicht nur den Fall von Schlüsselnamen zu vereinen, sondern auch die Array -Struktur neu zu organisieren.
Diese Funktion wird verwendet, um alle Schlüsselnamen eines Arrays in Kleinbuchstaben oder Großbuchstaben umzuwandeln.
array_change_key_case(array $array, int $case = CASE_LOWER): array
$ Array : Das zu verarbeitende Array.
$ Fall : Zielfall, optionaler Wert ist Case_lower (Standard) oder Case_upper .
Wird verwendet, um zwei Zahlen in ein Array zu kombinieren, eines als Schlüsselname und der andere als entsprechender Wert.
array_combine(array $keys, array $values): array
$ keys : Wird der Schlüsselname des Neuarrays sein.
$ values : wird der Wert des Neuarrays sein.
Hinweis: Beide Arrays müssen die gleiche Anzahl von Elementen haben.
Angenommen, wir haben zwei Arrays: Eine ist eine Reihe von Schlüsselnamen und der andere eine Reihe von Werten. Wir möchten den Schlüsselnamen in Kleinbuchstaben vereinen und ihn dann mit dem Wert und einem Neuarray kombinieren.
<?php
// Original -Auswahl an Schlüsselnamen(Fallmischung)
$keys = ['Name', 'EMAIL', 'Age'];
// Entsprechendes Wertschriften
$values = ['Alice', 'alice@m66.net', 30];
// Konvertieren Sie die Schlüsselnamen in Kleinbuchstaben
$lowercaseKeys = array_change_key_case(array_combine($keys, $values), CASE_LOWER);
// Ausgang verarbeitetes Array
print_r($lowercaseKeys);
Array
(
[name] => Alice
[email] => alice@m66.net
[age] => 30
)
Einheit : In vielen Fällen sind die von der Schnittstelle zurückgegebenen Arrayschlüsselnamen möglicherweise nicht einheitlich (beispielsweise sind einige Kleinbuchstaben und einige Großbuchstaben). Die Verwendung von Array_Change_key_Case () kann die Konsistenz der Datenverarbeitung verbessern.
Lesbarkeit : Das einheitliche Format erleichtert das Lesen des Codes und senkt die Wartungskosten.
Sicherheit : Einige Funktionen oder Bibliotheken reagieren bei der Verarbeitung von Arrays sensibel für Schlüsselnamen, und inkonsistenter Fall kann zu unerwarteten Fehlern führen.
array_change_key_case () funktioniert nur auf eindimensionalen Arrays, und es ist eine rekursive Verarbeitung erforderlich.
Stellen Sie sicher, dass die beiden Arrays die gleiche Länge haben, bevor Sie Array_combine () verwenden, ansonsten wird Falsch zurückgegeben.
Wenn Sie bereits über ein Schlüsselwert-Paar-Array verfügen, müssen Sie nur den Fall des Schlüsselnamens vereinen. Verwenden Sie einfach Array_Change_key_Case () , weder für Array_Combine () .
Ein praktisches Anwendungsszenario sind die von einem Benutzer übermittelten Formulardaten, und seine Feldnamen können aufgrund der manuellen Eingabe inkonsistent sein. Wir können zuerst das Feldname -Array und das entsprechende Wert -Array extrahieren und nach dem Formatschlüsselname -Format dann speichern oder überprüfen.
<?php
// Nehmen Sie Felder und Werte aus einem Formular an
$formKeys = ['UserName', 'EMail', 'Phone'];
$formValues = ['bob', 'bob@m66.net', '123456789'];
// Kombinieren und vereinen Sie die Schlüsselnamen
$processedForm = array_change_key_case(array_combine($formKeys, $formValues), CASE_LOWER);
// Ergebnis
print_r($processedForm);
Durch Kombination von Array_Change_key_case () und Array_combine () können wir die Formateinheitlichkeit von Arrayschlüsselnamen und die Umstrukturierung von Datenstrukturen anmutig vervollständigen. Diese Methode ist sehr nützlich für die Behandlung externer Dateneingaben, Interface -Antwortkonvertierung, Array -Normalisierung und anderen Szenarien. Das Beherrschen dieser Technik kann Ihre Funktionen des PHP -Array -Betriebs erheblich verbessern.