Quelle est la différence et la connexion entre array_fill_keys et array_map?
texte:
Dans PHP, Array_Fill_keys et Array_Map sont des fonctions communes pour les tableaux de fonctionnement, mais leurs fonctions et leurs utilisations sont différentes. Aujourd'hui, nous discuterons des différences et des connexions entre ces deux fonctions.
La fonction Array_Fill_keys est utilisée pour remplir un tableau en fonction de la touche spécifiée et donner une valeur. Le prototype de fonction est le suivant:
array_fill_keys(array $keys, mixed $value): array
Description du paramètre:
$ touches : est un tableau contenant des clés. array_fill_keys remplira un nouveau tableau basé sur ces clés.
$ VALEUR : La valeur doit être attribuée à chaque clé.
Valeur de retour:
Renvoie un nouveau tableau contenant la clé et la valeur spécifiées.
Exemple de code:
$keys = ['a', 'b', 'c'];
$value = 1;
$result = array_fill_keys($keys, $value);
print_r($result);
Sortir:
Array
(
[a] => 1
[b] => 1
[c] => 1
)
Comme indiqué ci-dessus, Array_Fill_keys crée un tableau contenant les clés spécifiées, et la valeur de chaque clé est 1 .
La fonction Array_Map applique une fonction de rappel à chaque élément du tableau et renvoie un nouveau tableau. Le prototype de fonction est le suivant:
array_map(callable $callback, array $array, ...$arrays): array
Description du paramètre:
$ rappelant : est une fonction de rappel qui gère chaque élément.
$ Array : est un tableau à traiter. Plusieurs tableaux peuvent être transmis et la fonction de rappel traitera à son tour les éléments correspondants de chaque tableau.
Valeur de retour:
Renvoie un nouveau tableau contenant chaque élément traité par la fonction de rappel.
Exemple de code:
$array = [1, 2, 3, 4];
$result = array_map(function($item) {
return $item * 2;
}, $array);
print_r($result);
Sortir:
Array
(
[0] => 2
[1] => 4
[2] => 6
[3] => 8
)
Comme indiqué ci-dessus, Array_Map applique une fonction de rappel à chaque élément du tableau, en multipliant sa valeur par 2.
array_fill_keys doit créer un tableau basé sur la touche spécifiée et attribuer la même valeur à chaque touche. Il ne fonctionne pas sur des éléments du tableau, il remplit simplement un nouveau tableau.
Array_map fonctionne sur chaque élément du tableau, utilise une fonction de rappel pour modifier chaque élément et renvoie le tableau modifié.
array_fill_keys convient lorsque vous avez déjà un ensemble de clés et que vous devez remplir des valeurs uniformes pour ces clés.
Array_map est souvent utilisé pour convertir les données dans un tableau lorsque vous devez effectuer une sorte de traitement sur chaque élément dans un tableau.
Dans une certaine mesure, Array_Map peut être utilisé pour fonctionner sur chaque élément dans un tableau, affectant ainsi indirectement la structure du tableau, similaire à la modification du contenu du tableau via une fonction de rappel. array_fill_keys se concentre davantage sur la façon d'utiliser les clés et les valeurs étant donné pour créer un nouveau tableau. Les deux impliquent des éléments du tableau lors des tableaux de traitement, mais leurs méthodes de traitement sont différentes des scénarios d'application.
array_fill_keys est utilisé pour remplir un tableau en fonction de la touche spécifiée et attribuer la même valeur.
Array_map est utilisé pour appliquer une fonction de rappel à chaque élément du tableau, renvoyant un nouveau tableau traité.
Ils sont tous deux très utiles lorsqu'ils travaillent avec des tableaux, mais leurs scénarios de concentration et d'utilisation respectifs sont différents. Le choix de la bonne fonction peut rendre le code plus concis et efficace.
Ce qui précède est une explication détaillée des différences et des connexions entre les fonctions Array_Fill_keys et Array_Map . J'espère que cela vous aidera à comprendre ces deux fonctions!