Maison  >  Article  >  développement back-end  >  Comment changer la clé du tableau php

Comment changer la clé du tableau php

PHPz
PHPzoriginal
2023-04-25 09:04:18395parcourir

Array est l'une des structures de données très importantes du langage de programmation PHP, principalement utilisée pour stocker et traiter des données. Dans le développement réel, il est parfois nécessaire de modifier les valeurs clés du tableau pour répondre à des besoins particuliers. Cet article explique comment modifier la valeur clé d'un tableau via les fonctions intégrées de PHP.

1. Fonction array_flip

La fonction array_flip peut être utilisée pour échanger les clés et les valeurs du tableau. Il prend toutes les clés du tableau d'origine comme valeurs, toutes les valeurs du tableau d'origine comme clés et renvoie un nouveau tableau échangé. La fonction array_flip peut être utilisée pour modifier facilement les valeurs clés du tableau.

Exemple de code :

// 原始数组
$array1 = array('name'=>'Tom', 'age'=>20, 'gender'=>'male');

// 通过array_flip函数交换键值
$array2 = array_flip($array1);

print_r($array2);

Résultat de sortie :

Array
(
    [Tom] => name
    [20] => age
    [male] => gender
)

Vous pouvez voir que dans le tableau échangé via la fonction array_flip, les clés et les valeurs du tableau d'origine sont échangées.

2. Fonction array_walk

La fonction array_walk peut parcourir le tableau et exécuter la fonction spécifiée sur chaque élément. Nous pouvons personnaliser une fonction de rappel et renommer la clé de chaque élément du tableau d'origine via la fonction array_walk. De cette façon, les valeurs clés du tableau peuvent être modifiées via la fonction array_walk.

Exemple de code :

// 原始数组
$array3 = array('name'=>'Tom', 'age'=>20, 'gender'=>'male');

// 自定义回调函数
function modify_key(&$value, $key)
{
    // 将原来的键名修改为新的键名
    if($key == 'name') $key = 'username';
    if($key == 'age') $key = 'userage';
    if($key == 'gender') $key = 'usergender';

    // 修改后的键名赋值给原始数组
    $value = array($key=>$value);
}

// 使用array_walk函数遍历数组并修改键名
array_walk($array3, 'modify_key');

print_r($array3);

Résultat de sortie :

Array
(
    [0] => Array
        (
            [username] => Tom
        )

    [1] => Array
        (
            [userage] => 20
        )

    [2] => Array
        (
            [usergender] => male
        )

)

Comme vous pouvez le voir, grâce à la fonction de rappel personnalisée et à la fonction array_walk, nous avons réussi à modifier la valeur clé du tableau d'origine.

3. Fonction array_map

La fonction array_map peut exécuter la fonction de rappel spécifiée pour chaque élément du tableau et renvoyer un nouveau tableau. Dans la fonction de rappel, nous pouvons changer la valeur clé du tableau en modifiant le nom clé de l'élément.

Exemple de code :

// 原始数组
$array4 = array('name'=>'Tom', 'age'=>20, 'gender'=>'male');

// 自定义回调函数
function modify_key_map($value, $key)
{
    // 将原来的键名修改为新的键名
    if($key == 'name') $key = 'username';
    if($key == 'age') $key = 'userage';
    if($key == 'gender') $key = 'usergender';

    // 返回修改后的键名和值
    return array($key=>$value);
}

// 使用array_map函数遍历数组并修改键名
$array5 = array_map('modify_key_map', $array4, array_keys($array4));

print_r($array5);

Résultat de sortie :

Array
(
    [0] => Array
        (
            [username] => Tom
        )

    [1] => Array
        (
            [userage] => 20
        )

    [2] => Array
        (
            [usergender] => male
        )

)

On peut voir que nous avons modifié avec succès la valeur clé du tableau via la fonction de rappel personnalisée et la fonction array_map.

En résumé, nous pouvons modifier très facilement les valeurs clés du tableau grâce aux fonctions intégrées de PHP. La fonction array_flip peut échanger directement les clés et les valeurs du tableau d'origine, tandis que les fonctions array_walk et array_map peuvent modifier les valeurs clés des éléments via des fonctions de rappel personnalisées. Dans le développement réel, nous pouvons choisir différentes méthodes pour modifier les valeurs clés du tableau en fonction de besoins spécifiques.

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