Position actuelle: Accueil> Derniers articles> array_change_key_case () combine strtolower () et strtoupper () pour gérer les clés dans des formats personnalisés

array_change_key_case () combine strtolower () et strtoupper () pour gérer les clés dans des formats personnalisés

M66 2025-04-25

En PHP, le cas des clés du tableau est très important car les tableaux sont sensibles à la casse. Parfois, nous voulons pouvoir unifier le format de toutes les clés dans un tableau, tels que la conversion de tous les noms de clés en lettres minuscules ou majuscules. array_change_key_case () est une fonction utile fournie par PHP, qui nous permet de modifier le cas des touches de tableau.

Cependant, il y a des cas où nous pouvons vouloir avoir des contrôles granulaires plus fins, comme la conversion de certaines parties du nom de clé en minuscules et d'autres en majuscules. Pour y parvenir, nous pouvons utiliser array_change_key_case () en conjonction avec strtolower () et strtoupper () pour personnaliser les règles de conversion pour les noms de clés.

Utilisez array_change_key_case () pour convertir le cas des noms de clés

array_change_key_case () peut être utilisé pour convertir le cas des touches de tableau en minuscules ou en majuscules uniformes. Il accepte deux paramètres:

  • Le premier paramètre est le tableau à convertir.

  • Le deuxième paramètre est le moyen de convertir, Case_upper convertit toutes les touches en majuscules et Case_Lower convertit toutes les touches en minuscules.

Exemple de base: convertir tous les noms de clés en minuscules

 <?php
$array = [
    "FirstName" => "John",
    "LastName" => "Doe",
    "Email" => "john.doe@m66.net"
];

$lowercaseArray = array_change_key_case($array, CASE_LOWER);

print_r($lowercaseArray);
?>

Résultat de sortie:

 Array
(
    [firstname] => John
    [lastname] => Doe
    [email] => john.doe@m66.net
)

Comme indiqué ci-dessus, tous les noms de clés sont convertis en minuscules.

Exemple de base: convertir tous les noms de clés en majuscules

 <?php
$array = [
    "firstName" => "John",
    "lastName" => "Doe",
    "email" => "john.doe@m66.net"
];

$uppercaseArray = array_change_key_case($array, CASE_UPPER);

print_r($uppercaseArray);
?>

Résultat de sortie:

 Array
(
    [FIRSTNAME] => John
    [LASTNAME] => Doe
    [EMAIL] => john.doe@m66.net
)

Dans cet exemple, tous les noms de clés sont convertis en majuscules.

Plus de conversion personnalisée à grains fins: combiner strtolower () et strtoupper ()

Parfois, nous ne voulons pas seulement convertir tous les noms de clés en minuscules ou en majuscules, mais nous voulons convertir certaines pièces en minuscules et d'autres en majuscules en fonction de nos besoins. Par exemple, nous voulons peut-être convertir "FirstName" en "first_name" et "lastname" en "last_name".

À l'heure actuelle, nous pouvons utiliser strtolower () ou strtoupper () pour ajuster davantage chaque nom de clé après array_change_key_case () .

Exemple: Conversion personnalisée en Format minuscule + sous-traitant

Supposons que nous voulons convertir la première lettre de chaque mot du nom de clé en majuscules et le connecter avec un soulignement, tout en convertissant les autres lettres en minuscules. Nous pouvons y parvenir par:

 <?php
$array = [
    "FirstName" => "John",
    "LastName" => "Doe",
    "Email" => "john.doe@m66.net"
];

function customKeyFormat($key) {
    // Capitaliser la lettre initiale de chaque mot,Autres lettres minuscules,Connectez-vous avec
    return strtolower(preg_replace('/([a-z])([A-Z])/', '$1_$2', $key));
}

$newArray = [];
foreach ($array as $key => $value) {
    $newArray[customKeyFormat($key)] = $value;
}

print_r($newArray);
?>

Résultat de sortie:

 Array
(
    [first_name] => John
    [last_name] => Doe
    [email] => john.doe@m66.net
)

Dans cet exemple, nous avons utilisé la fonction preg_replace () pour convertir la nomenclature de camel en minuscules et séparée par soulignement. Grâce à Strtolower (), il est en outre assuré que toutes les lettres sont minuscules.

Résumer

En combinant array_change_key_case () , strtolower () et strtoupper () , nous pouvons gérer de manière flexible la conversion de format des noms de clés dans les tableaux PHP. Qu'il s'agisse de convertir tous les noms de clés en minuscules ou en majuscules uniformes, ou en implémentant des formats personnalisés plus complexes, PHP fournit suffisamment d'outils pour accomplir cette tâche. Cela peut nous aider à exploiter les noms de clés plus facilement et uniformément lors du traitement des données de tableau.

J'espère que cet article vous aidera à mieux comprendre comment implémenter la conversion personnalisée des formats de noms de clé en combinant ces fonctions PHP.