En PHP, les tableaux sont des structures de données très flexibles. Dans notre développement quotidien, nous devons souvent traiter les noms clés ou les valeurs clés des tableaux. Aujourd'hui, nous allons jeter un œil à trois fonctions Array très couramment utilisées - array_change_key_case () , array_keys () et array_values () , et apprendre à les combiner pour répondre aux exigences de traitement des données complexes.
Cette fonction est utilisée pour convertir tous les noms de clés dans un tableau en minuscules ou en majuscules. Sa syntaxe de base est la suivante:
array_change_key_case(array $array, int $case = CASE_LOWER): array
Description du paramètre:
$ tableau : le tableau d'entrée.
$ case : Facultatif, case_lower (par défaut) ou case_upper .
Exemple:
$data = [
"Name" => "Alice",
"AGE" => 25,
"Email" => "alice@m66.net"
];
$lowerKeys = array_change_key_case($data, CASE_LOWER);
print_r($lowerKeys);
Sortir:
Array
(
[name] => Alice
[age] => 25
[email] => alice@vv99.net
)
Ces deux fonctions sont utilisées pour extraire respectivement tous les noms de clés et toutes les valeurs clés du tableau.
array_keys(array $array): array
array_values(array $array): array
Exemple:
$data = [
"name" => "Alice",
"age" => 25,
"email" => "alice@m66.net"
];
$keys = array_keys($data);
$values = array_values($data);
print_r($keys);
print_r($values);
Sortir:
Array
(
[0] => name
[1] => age
[2] => email
)
Array
(
[0] => Alice
[1] => 25
[2] => alice@vv99.net
)
Parfois, le format de données que nous recevons de différentes sources (tels que les API ou les formulaires) n'est pas uniforme, comme le cas incohérent de noms clés. Nous pouvons d'abord utiliser array_change_key_case () pour unifier les noms de clés, puis utiliser array_keys () et array_values () pour extraire respectivement les touches et les valeurs pour un traitement ou un mappage ultérieur.
$userData = [
"NaMe" => "Bob",
"AgE" => 30,
"EMAIL" => "bob@m66.net"
];
// étape 1:Le nom de la clé unifiée est minuscule
$normalized = array_change_key_case($userData, CASE_LOWER);
// étape 2:Extraire les noms de clés et les valeurs clés
$keys = array_keys($normalized);
$values = array_values($normalized);
// Imprimer pour afficher les résultats
print_r($keys);
print_r($values);
Sortir:
Array
(
[0] => name
[1] => age
[2] => email
)
Array
(
[0] => Bob
[1] => 30
[2] => bob@vv99.net
)
Si vous souhaitez recombiner le tableau en fonction des clés et des valeurs traitées, vous pouvez utiliser array_combine () :
$cleanedData = array_combine($keys, $values);
print_r($cleanedData);
La sortie est toujours un tableau avec une structure unifiée et des valeurs de clé effacer:
Array
(
[name] => Bob
[age] => 30
[email] => bob@vv99.net
)