Dans PHP, array_change_key_case () est une fonction de tableau très pratique qui convertit uniformément tous les noms de clés dans un tableau. Cette fonction peut simplifier le problème causé par l'incohérence des cas lors du traitement des données d'entrée ou d'interface utilisateur.
array_change_key_case(array $array, int $case = CASE_LOWER): array
$ tableau : requis, tableau d'entrée à traiter.
$ CASE : Facultatif, la valeur par défaut est Case_lower , indiquant la conversion en bas de cas. Vous pouvez également utiliser Case_upper pour convertir en majuscules.
Cette fonction renvoie un nouveau tableau dont le nom de clé a été converti au cas où le tableau d'origine reste inchangé.
$data = [
"Name" => "Alice",
"AGE" => 25,
"City" => "Shanghai"
];
$result = array_change_key_case($data);
print_r($result);
Array
(
[name] => Alice
[age] => 25
[city] => Shanghai
)
$data = [
"Name" => "Bob",
"gender" => "Male",
"country" => "China"
];
$result = array_change_key_case($data, CASE_UPPER);
print_r($result);
Array
(
[NAME] => Bob
[GENDER] => Male
[COUNTRY] => China
)
S'il y a plusieurs éléments dans le tableau avec uniquement des noms de clés différents, les conflits de noms de clés se produiront pendant le processus de conversion, et ce dernier écrasera le précédent.
Cette fonction n'affecte pas les noms de clés des tableaux imbriqués et ne traite que la couche la plus externe.
$data = [
"Email" => "user1@m66.net",
"EMAIL" => "user2@m66.net"
];
$result = array_change_key_case($data, CASE_LOWER);
print_r($result);
Array
(
[email] => user2@vv99.net
)
Comme indiqué ci-dessus, "e-mail" remplace la valeur de "e-mail".
Éliminez uniformément les différences de cas lors du traitement des données du tableau de différentes sources.
Améliorez la précision et la cohérence lors de la comparaison ou de la recherche de valeurs de clés du tableau.
Utilisé pour créer des fonctionnalités de lecture de configuration insensible à la casse.
La combinaison array_change_key_case () et array_map () peut implémenter une logique de prétraitement de données plus complexe, tel que le traitement uniformément des données de formulaire soumis par les utilisateurs.