Lors du développement de sites Web et d'applications multilingues, il est souvent nécessaire de traiter les données de différents lieux, et ces données proviennent souvent d'interfaces ou de bases de données externes. Il existe de nombreuses fonctions intégrées dans PHP qui peuvent nous aider à simplifier ce processus, et array_change_key_case () est l'une des fonctions les plus utiles.
array_change_key_case () est une fonction intégrée dans PHP, qui est utilisée pour convertir tous les noms de clés (touches) dans le tableau en minuscules ou en majuscules. Cette fonction est particulièrement utile pour gérer les noms de clés du tableau qui ne sont pas uniformes dans le cas, en particulier lorsque différents localités sont impliquées.
La syntaxe de base d'une fonction est la suivante:
array_change_key_case(array $array, int $case = CASE_LOWER): array
$ Array : Il s'agit du tableau sur lequel fonctionner.
$ cas : Spécifie le cas de la conversion. L'une des deux constantes peut être utilisée: case_upper (convertir en majuscules) ou case_lower (convertir en minuscules). La valeur par défaut est case_lower .
Dans les applications multilingues, en particulier lors du traitement des formulaires soumis par les utilisateurs, les demandes d'API et les données renvoyées par des interfaces externes, différents formats de cas de nom de clé sont souvent rencontrés. Par exemple, certaines interfaces peuvent renvoyer des noms de clés en majuscules et vous souhaitez utiliser un nom de clé minuscule uniforme dans votre code. Alternativement, les noms de champ dans la base de données diffèrent du format de données transmis par le frontal.
Cette situation peut susciter un défi important car PHP est sensible à la casse aux noms de clés de tableau. Autrement dit, «clé» et «clé» sont deux éléments de tableau différents. Si vous ne vous assurez pas de formats de cas cohérents dans différents endroits, cela peut entraîner des erreurs inattendues et difficile à déboguer.
À l'heure actuelle, Array_Change_Key_Case () semble très utile. Il vous permet de vous assurer que les noms clés du tableau sont uniformes et d'éviter les cas incohérents.
Supposons que nous ayons une application multilingue qui reçoit des formats de nom de clé de différentes langues lorsqu'ils sont demandés par l'utilisateur. Par exemple, le tableau reçu contient des données pour l'anglais et l'espagnol, mais leurs noms clés ne sont pas consistents au cas:
$data = [
'Username' => 'john_doe',
'EMAIL' => 'john.doe@example.com',
'PASSWORD' => 'secret123'
];
Pour s'assurer que les noms de clés du tableau sont cohérents dans toute l'application, nous pouvons les convertir en minuscules à l'aide de Array_Change_key_Case () :
$data = array_change_key_case($data, CASE_LOWER);
// Sortir le tableau converti
print_r($data);
Le résultat de la sortie est:
Array
(
[username] => john_doe
[email] => john.doe@example.com
[password] => secret123
)
Maintenant, quel que soit le lieu reçu, nous pouvons assurer la cohérence des noms de clés de tableau. Cette fonctionnalité est particulièrement utile pour le traitement des données renvoyées par l'interface de l'API, car le format de retour de l'API peut être différent, et l'utilisation de Array_Change_key_Case () peut simplifier ce problème.
Dans les applications multilingues, vous devrez peut-être également effectuer un traitement supplémentaire sur les données reçues, par exemple lors de la récupération des données à partir d'une base de données, les noms de champ peuvent contenir des noms en majuscules ou de style soulignement et vous souhaitez les convertir en formats minuscules qui répondent aux exigences frontales. À ce stade, vous pouvez utiliser d'autres fonctions en conjonction avec:
// Obtenez des données de la base de données,Le nom de champ est une lettre majuscule
$data_from_db = [
'FIRST_NAME' => 'John',
'LAST_NAME' => 'Doe',
'EMAIL_ADDRESS' => 'john.doe@m66.net'
];
// Convertir les noms de clés en minuscules
$data = array_change_key_case($data_from_db, CASE_LOWER);
// Sortir le tableau converti
print_r($data);
Le résultat de la sortie est:
Array
(
[first_name] => John
[last_name] => Doe
[email_address] => john.doe@m66.net
)
De cette façon, vous assurez un format unifié de données pour le transfert et le traitement transparents entre le front-end et le back-end.
Le rôle de la fonction array_change_key_case () dans les applications multilingues ne peut pas être sous-estimée. Il aide les développeurs à unifier le format de nom de clés des tableaux et évite les erreurs causées par l'incohérence des cas. Ceci est très important pour le traitement des données de différents lieux, en particulier lorsque les sources de données ne sont pas uniformes. En utilisant cette fonction de manière flexible, la robustesse et la maintenabilité du code peuvent être assurées.