In PHP ist Array_Change_key_case () eine häufig verwendete Funktion, die Buchstaben aller Schlüsselnamen in einem Array in Kleinbuchstaben oder Großbuchstaben umwandelt. Aber wenn die Schlüsselnamen eines Arrays spezielle Zeichen (wie Symbole, Zahlen, Räume, Chinesen usw.) enthalten, was verhält es sich? In diesem Artikel werden die Details anhand von Beispielen untersucht.
array_change_key_case(array $array, int $case = CASE_LOWER): array
$ Array : Das zu verarbeitende Array.
$ case : Die Konstanten case_lower (Standard) oder Case_upper repräsentieren die Konvertierung in Kleinbuchstaben oder Großbuchstaben.
$data = [
"Name" => "Alice",
"AGE" => 30,
"eMail" => "alice@m66.net"
];
$result = array_change_key_case($data, CASE_LOWER);
print_r($result);
Ausgabe:
Array
(
[name] => Alice
[age] => 30
[email] => alice@vv99.net
)
Wie Sie sehen können, werden alle Schlüsselnamen vom Buchstabentyp in Kleinbuchstaben konvertiert.
$data = [
"User-Name" => "Bob",
"AGE!" => 25,
"Adresse" => "Peking",
"Phone Number" => "1234567890",
"123KEY" => "value",
];
$result = array_change_key_case($data, CASE_UPPER);
print_r($result);
Das Ausgabeergebnis ist wie folgt:
Array
(
[USER-NAME] => Bob
[AGE!] => 25
[Adresse] => Peking
[PHONE NUMBER] => 1234567890
[123KEY] => value
)
Schlüsselnamen mit Sonderzeichen (z. B. - , ! , Leerzeichen) : Konvertieren Sie nur die englischen Buchstabenteile, und andere Zeichen bleiben so wie sie sind.
Nicht-Letter-Schlüsselnamen (wie Chinesisch und Ziffern) : Sie werden nicht geändert und bleiben so wie es ist.
Zahlenschlüssel : Array_Change_key_Case () verarbeitet nur Stringschlüsselnamen, und die Zahlenschlüssel sind überhaupt nicht betroffen.
Lassen Sie mich Ihnen ein weiteres Beispiel geben:
$data = [
"name" => "Xiao Ming",
42 => "Zahlenschlüssel",
"HELLO_world!" => "test"
];
print_r(array_change_key_case($data, CASE_LOWER));
Ausgabe:
Array
(
[name] => Xiao Ming
[42] => Zahlenschlüssel
[hello_world!] => test
)
Der Aktionsumfang von Array_Change_key_Case () enthält nur Schlüssebamen des String -Typs und wirkt sich nur auf den Fall der englischen Buchstaben in den Schlüsselnamen aus. Andere Zeichen (einschließlich spezieller Symbole, Räume, Chinesen und Zahlen) werden nicht geändert. Dies ist besonders wichtig, wenn Sie sich mit Arrays mit Sondernamen der Schlüsselformat befassen, um Fehloperationen oder Schlüsselnamenkonflikte zu vermeiden.
Bei der Verarbeitung von Schlüsselnamen ist es wichtig zu klären, welche Schlüssel spezielle Zeichen enthalten, insbesondere Arrays, die aus externen APIs oder Benutzereingaben generiert werden.
Wenn Sie die Regeln vollständig anpassen müssen, um Schlüsselnamen zu verarbeiten (z. B. nur Teilzeichen ersetzen), können Sie Array_map () verwenden oder das Array durchqueren, um die Verarbeitungslogik anzupassen.
Ich hoffe, dieser Artikel kann Ihnen helfen, das Verhalten und die Verwendungsvorkehrungen von Array_Change_key_Case () klarer zu verstehen! Wenn Sie die Fähigkeiten zur Verarbeitung von PHP -Array weiter erlernen müssen, folgen Sie uns bitte für weitere Tutorials.