Maison > Article > développement back-end > php modifie le nom de la clé du tableau
Dans le développement PHP, il est souvent nécessaire d'opérer sur des tableaux, et modifier le nom de clé du tableau est l'une des opérations courantes. Cet article explique comment utiliser le langage PHP pour modifier le nom de clé d'un tableau.
1. Qu'est-ce qu'une clé de tableau ?
Tout d'abord, nous devons clarifier ce qu'est une clé de tableau. En PHP, une clé de tableau fait référence à un identifiant unique pour chaque élément du tableau. Les tableaux en PHP peuvent utiliser des entiers et des chaînes comme clés. Bien entendu, après PHP 5.4, vous pouvez également utiliser des constantes comme noms de clés.
Par exemple, nous définissons d'abord un tableau simple :
$arr = array('name' => '张三', 'age' => 20, 'gender' => '男');
Dans le code ci-dessus, 'name', 'age' et 'gender' sont respectivement les noms clés des éléments du tableau $arr.
2. Utilisez la fonction PHP array_combine() pour modifier le nom de la clé du tableau
Maintenant, nous devons changer le nom de la clé 'age' dans le tableau $arr en 'years'. En PHP, vous pouvez utiliser la fonction array_combine() pour créer un nouveau tableau dans lequel les clés du nouveau tableau sont mappées à plusieurs reprises à partir des valeurs du tableau d'origine.
Plus précisément, nous pouvons d'abord utiliser la fonction array_combine() pour échanger les noms de clés et les valeursdans le tableau d'origine, puis utiliser à nouveau cette fonction pour effectuer un mappage répété, où l'index « âge » est remplacé par « ans' :
$arr = array('name' => '张三', 'age' => 20, 'gender' => '男'); // 将原数组中的键名和值互换 $arr_flip = array_flip($arr); // 重复映射生成新数组 $new_keys = array_combine(array('name', 'years', 'gender'), $arr_flip); // 将新数组中的键名和值再次互换 $new_arr = array_flip($new_keys); print_r($new_arr);
Dans le code ci-dessus, nous utilisons d'abord la fonction PHP array_flip() pour échanger le nom de clé et la valeur du tableau d'origine, en transformant le nom de clé en valeur de la valeur et en transformant la valeur en clé nom du nom de la clé. Ensuite, nous mappons les nouveaux noms de clés et répétitions aux valeurs du tableau d'origine, générant un nouveau tableau de $new_keys. Enfin, nous utilisons à nouveau la fonction array_flip() pour échanger à nouveau les noms de clés et les valeurs du nouveau tableau, et enfin obtenir le nouveau tableau $new_arr.
3. Utilisez la fonction PHP array_reduce() pour modifier le nom de clé du tableau
En plus d'utiliser la fonction array_combine(), vous pouvez également utiliser la fonction PHP array_reduce() pour modifier le nom de clé du tableau. La fonction de la fonction array_reduce() est de réduire tous les éléments du tableau via des fonctions définies par l'utilisateur.
Les opérations spécifiques sont les suivantes :
$arr = array('name' => '张三', 'age' => 20, 'gender' => '男'); $mapping = array('age' => 'years'); $func = function ($carry, $item) use ($mapping) { $key = $item[0]; $value = $item[1]; if (isset($mapping[$key])) { $key = $mapping[$key]; } $carry[$key] = $value; return $carry; }; $new_arr = array_reduce(array_map(null, array_keys($arr), $arr), $func, array()); print_r($new_arr);
Dans le code ci-dessus, nous emballons d'abord le tableau d'origine, qui est l'opération effectuée par array_map(null, array_keys($arr), $arr). Ensuite, nous utilisons une fonction personnalisée $func dans la fonction array_reduce(), qui vérifie chaque élément du tableau d'origine, modifie le nom de la clé si un mappage existe et crée une nouvelle clé dans le nom et la valeur du tableau réorganisé. Enfin, nous obtenons le nouveau tableau $new_arr.
Conclusion
Cet article présente comment utiliser le langage PHP pour modifier le nom de clé d'un tableau. Dans le développement réel, des opérations correctes sur les baies peuvent améliorer l'efficacité opérationnelle et la maintenabilité du programme. C'est l'une des raisons pour lesquelles nous continuons à apprendre et à maîtriser de nouvelles technologies.
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!