Position actuelle: Accueil> Derniers articles> array_flip () et array_map () pour convertir les structures de données

array_flip () et array_map () pour convertir les structures de données

M66 2025-05-14

En PHP, les tableaux sont une structure de données très importante. Pour les opérations Array, PHP fournit de nombreuses fonctions intégrées, parmi lesquelles Array_flip () et Array_Map () sont deux fonctions communes. En combinant ces deux fonctions, nous pouvons convertir efficacement la structure de données du tableau. Cet article expliquera en détail comment utiliser array_flip () et array_map () en combinaison pour y parvenir.

Qu'est-ce que Array_flip () ?

La fonction array_flip () est une fonction intégrée en PHP, et sa fonction est d'échanger des clés et des valeurs des tableaux. Cette fonction est très adaptée pour retourner un tableau de structures. La fonction est définie comme suit:

 array_flip(array $array): array
  • Paramètres : accepte un tableau de berge $ .

  • Valeur de retour : renvoie un nouveau tableau, où les clés et les valeurs dans le tableau sont échangées.

Exemple:

 $array = ['apple' => 'fruit', 'carrot' => 'vegetable', 'banana' => 'fruit'];
$flipped = array_flip($array);
print_r($flipped);

Sortir:

 Array
(
    [fruit] => banana
    [vegetable] => carrot
)

Comme vous pouvez le voir, array_flip () prend la valeur du tableau comme la nouvelle clé et la clé d'origine comme nouvelle valeur.

Qu'est-ce que Array_Map () ?

La fonction array_map () est utilisée pour appliquer une fonction de rappel à chaque élément du tableau et renvoyer un nouveau tableau. Sa définition est la suivante:

 array_map(callable $callback, array $array): array
  • Paramètre :

    • $ rappel : la fonction de rappel s'appliquait à chaque élément du tableau.

    • $ Array : le tableau à fonctionner.

  • Valeur de retour : renvoie un tableau contenant la fonction de rappel appliquée.

Exemple:

 $array = [1, 2, 3, 4, 5];
$squared = array_map(function($item) {
    return $item * $item;
}, $array);

print_r($squared);

Sortir:

 Array
(
    [0] => 1
    [1] => 4
    [2] => 9
    [3] => 16
    [4] => 25
)

Utilisez array_flip () et array_map () pour implémenter la conversion de la structure du tableau

La combinaison de array_flip () et array_map () peut nous aider à convertir la structure des tableaux en transformations plus complexes. Par exemple, nous pourrions avoir besoin de convertir la valeur d'un tableau contenant des paires de valeurs de clé en clés et d'appliquer certaines fonctions de traitement.

Exemple de scénario:

Supposons que nous ayons un tableau contenant le nom du produit et son prix. Nous voulons échanger des clés et des valeurs et appliquer une remise au prix (comme 10% de réduction).

Exemple de code:

 $array = [
    'apple' => 100,
    'banana' => 200,
    'cherry' => 300
];

// utiliser array_flip() Prendre la valeur comme la clé,Clé comme valeur
$flipped = array_flip($array);

// utiliser array_map() Faire un prix pour chacun9pli
$discounted = array_map(function($price) {
    return $price * 0.9;
}, $flipped);

print_r($discounted);

Sortir:

 Array
(
    [100] => 90
    [200] => 180
    [300] => 270
)

Dans cet exemple, array_flip () prend d'abord le prix du produit en tant que nouvelle clé, puis la fonction array_map () traite 10% de réduction sur chaque prix, renvoyant un nouveau tableau.

Scénarios d'application

  1. Inverser la paire de valeurs de clé et le cartographier : si vous avez un tableau contenant des paires de valeurs de clé, vous pouvez d'abord utiliser array_flip () pour retourner le tableau, puis traiter les valeurs via array_map () , et enfin obtenir une nouvelle structure.

  2. Effectuer le traitement des données par lots : par exemple, calcul par lots des prix de réduction, conversion de texte, modification du format numérique dans le tableau, etc.

Choses à noter

  1. Unité clé : lors de l'utilisation de Array_flip () , les valeurs du tableau d'origine doivent être uniques, sinon certaines données seront perdues car la même valeur sera écrasée.

  2. Fonction de rappel : Lors de l'utilisation de Array_Map () , la fonction de rappel sera appliquée à chaque élément du tableau pour s'assurer que la logique de la fonction de rappel est adaptée à vos besoins.

J'espère que cet article vous aidera à comprendre comment utiliser array_flip () et array_map () pour convertir la structure de données des tableaux PHP. Si vous avez des questions, n'hésitez pas à leur poser!