Maison  >  Article  >  développement back-end  >  Comment convertir la valeur clé d'un tableau en php

Comment convertir la valeur clé d'un tableau en php

PHPz
PHPzoriginal
2023-04-19 10:07:07631parcourir

En programmation PHP, le tableau est une structure de données très courante. Les tableaux se composent généralement d'un ensemble de paires clé-valeur, où la clé est l'identifiant unique de l'élément du tableau et la valeur est les données stockées dans l'élément. Dans les applications pratiques, nous devons souvent transformer les valeurs clés des tableaux pour répondre à différents besoins.

  1. Convertir les noms de clés du tableau en lettres minuscules

Dans certains cas, nous devons convertir uniformément les noms de clés du tableau (c'est-à-dire la clé du tableau) en lettres minuscules. Par exemple, lors de la réception des données de formulaire soumises par les utilisateurs, afin d'éviter les erreurs causées par des noms de clés incohérents saisis par les utilisateurs, nous pouvons convertir tous les noms de clés en lettres minuscules.

PHP fournit la fonction array_change_key_case, qui peut convertir tous les noms de clés de tableau en lettres minuscules. L'utilisation de la fonction est la suivante :

array array_change_key_case ( array $array [, int $case = CASE_LOWER ] )

Le paramètre $array est le tableau qui doit être converti, et le paramètre $case spécifie la forme de casse des lettres convertie. Lorsque $case est CASE_LOWER (valeur par défaut), tous les noms de clés sont convertis en lettres minuscules ; lorsque $case est CASE_UPPER, tous les noms de clés sont convertis en lettres majuscules.

Ce qui suit est un exemple de code :

// 定义一个大小写不规范的数组
$arr = array(
    'Name' => '张三',
    'AGE' => 20,
    'hObBy' => 'running'
);

// 将数组的键名全部转换为小写字母
$arr = array_change_key_case($arr, CASE_LOWER);

// 输出转换后的数组
print_r($arr);

Le code ci-dessus produira les résultats suivants :

Array
(
    [name] => 张三
    [age] => 20
    [hobby] => running
)
  1. Convertir les noms de clés de tableau en lettres majuscules

De même, lorsque nous devons convertir tous les noms de clés de tableau en lettres majuscules, Vous pouvez utiliser la fonction array_change_key_case et définir le paramètre $case sur CASE_UPPER. Par exemple :

// 定义一个大小写不规范的数组
$arr = array(
    'Name' => '张三',
    'AGE' => 20,
    'hObBy' => 'running'
);

// 将数组的键名全部转换为大写字母
$arr = array_change_key_case($arr, CASE_UPPER);

// 输出转换后的数组
print_r($arr);

Le code ci-dessus affichera le résultat suivant :

Array
(
    [NAME] => 张三
    [AGE] => 20
    [HOBBY] => running
)
  1. Convertir la première lettre du nom de la clé du tableau en majuscules

Parfois, nous devons convertir la première lettre du nom de la clé du tableau en lettres majuscules . Par exemple, lorsque nous concevons un framework ORM similaire à ActiveRecord, nous devons convertir les noms de champs de base de données en noms de propriétés de modèle correspondants, et les noms de propriétés de modèle commencent généralement par une lettre majuscule.

PHP fournit une fonction appelée array_combine, qui peut combiner deux tableaux dans un nouveau tableau, en utilisant les éléments du premier tableau comme clés du nouveau tableau et les éléments du deuxième tableau comme nouvelle valeur du tableau. Eh bien, nous pouvons utiliser cette fonction pour générer un nouveau tableau et convertir la première lettre du nom de la clé en lettres majuscules.

Ce qui suit est un exemple de code :

// 定义一个数组
$arr = array(
    'Name' => '张三',
    'age' => 20,
    'hobby' => 'running'
);

// 将数组的键名的首字母转换为大写字母
$new_arr = array_combine(
    array_map('ucfirst', array_keys($arr)),
    array_values($arr)
);

// 输出转换后的数组
print_r($new_arr);

Le code ci-dessus affichera les résultats suivants :

Array
(
    [Name] => 张三
    [Age] => 20
    [Hobby] => running
)

Dans le code ci-dessus, nous utilisons la fonction array_map pour opérer sur les noms de clés du tableau. La fonction array_map accepte une fonction de rappel comme paramètre et transmet chaque élément du tableau à la fonction de rappel pour traitement. Dans cet exemple, nous avons utilisé la fonction intégrée ucfirst pour convertir la première lettre de la chaîne en majuscule.

  1. Échanger les noms de clé et les valeurs de clé du tableau

Parfois, nous devons échanger les noms de clé et les valeurs de clé du tableau, c'est-à-dire que la valeur d'origine est utilisée comme nom de clé du nouveau tableau, et le nom de clé d'origine est utilisé comme nom de clé de la nouvelle valeur du tableau. Cette conversion est très courante lors du traitement des données et nous permet de rechercher et de filtrer rapidement.

PHP fournit une fonction appelée array_flip, qui peut échanger les noms de clé et les valeurs de clé du tableau. L'utilisation de la fonction est la suivante :

array array_flip ( array $array )

où le paramètre $array est le tableau qui doit être converti.

Ce qui suit est un exemple de code :

// 定义一个数组
$arr = array(
    'Name' => '张三',
    'Age' => 20,
    'Hobby' => 'running'
);

// 将数组的键名和键值互换
$new_arr = array_flip($arr);

// 输出转换后的数组
print_r($new_arr);

Le code ci-dessus affichera les résultats suivants :

Array
(
    [张三] => Name
    [20] => Age
    [running] => Hobby
)

Dans le code ci-dessus, la fonction array_flip échange les noms de clé et les valeurs de clé​​dans le tableau d'origine, générant ainsi un nouveau tableau.

Résumé

En programmation PHP, la conversion clé-valeur d'un tableau est l'une des opérations les plus courantes. Grâce à certaines fonctions intégrées fournies par PHP, nous pouvons facilement convertir les valeurs clés du tableau pour répondre à différents besoins. Dans le développement réel, nous devons choisir la méthode de conversion appropriée en fonction de la situation spécifique pour obtenir de meilleurs résultats de développement.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn