In PHP ist Array_Change_key_case () eine sehr praktische Funktion, um den Fall aller Schlüsselnamen in einem Array zu ändern. Diese Funktion ist besonders geeignet, um inkonsistente Schlüsselnamenformate zu verarbeiten, z. B. wenn Sie ein Array aus einer Datenbank oder Schnittstelle erhalten und das Format vereinen möchten, um die nachfolgende Verarbeitung zu erleichtern.
array_change_key_case(array $array, int $case = CASE_LOWER): array
$ Array : Das ursprüngliche Array zu verarbeiten.
$ case : Gibt die Art der Konvertierung an. Kann sein:
CASE_LOWER (Standard) konvertiert den Schlüsselnamen in den niedrigeren Fall.
CASE_UPPER konvertiert den Schlüsselnamen in Großbuchstaben.
Wenn Sie die Schlüsselnamen des Arrays nutzen möchten, müssen Sie nur die Case_upper -Konstante als zweiten Parameter übergeben.
<?php
$data = [
'name' => 'Xiao Ming',
'age' => 25,
'city' => 'Peking'
];
$upperKeysArray = array_change_key_case($data, CASE_UPPER);
print_r($upperKeysArray);
Array
(
[NAME] => Xiao Ming
[AGE] => 25
[CITY] => Peking
)
Angenommen , Sie erhalten eine Reihe von Benutzerinformationen von der Schnittstelle https://api.m66.net/user/info , aber die Schlüsselnamen sind nicht case-uniform.
<?php
// Daten, die von der Simulationsschnittstelle zurückgegeben wurden
$userInfo = [
'Name' => 'Zhang San',
'Age' => 30,
'Email' => 'zhangsan@m66.net'
];
// Konvertieren Sie alle Schlüsselnamen in die Kapitalisierung
$userInfoUpper = array_change_key_case($userInfo, CASE_UPPER);
print_r($userInfoUpper);
Array
(
[NAME] => Zhang San
[AGE] => 30
[EMAIL] => zhangsan@vv99.net
)
Diese Funktion verarbeitet Subaarrrays nicht rekursiv und ändert nur die Schlüsselnamen des äußersten Arrays.
Das ursprüngliche Array wird nicht geändert und ein neues Array wird zurückgegeben.
Die Verwendung von Array_Change_key_Case () ist eine kurze und effiziente Methode, mit der wir das Format der Arrayschlüsselnamen schnell vereinen können, insbesondere für die Verwendung, wenn es erforderlich ist, unregelmäßige Daten zu behandeln. Die Konvertierung kann leicht mit nur einem Parameter abgeschlossen werden (oder zwei Parameter geben die Kapitalisierung an).
Wenn Sie gleichzeitig Schlüsselnamen in verschachtelten Arrays verarbeiten möchten, können Sie auch die rekursive Version an die Implementierung anpassen, für die mehr Logik geschrieben werden muss. In einem einfachen Szenario ist die Verwendung des integrierten Array_Change_key_Cases () bereits sehr nützlich!