Maison  >  Article  >  développement back-end  >  Introduction détaillée à l'utilisation de la fonction array_walk() dans la bibliothèque de fonctions PHP

Introduction détaillée à l'utilisation de la fonction array_walk() dans la bibliothèque de fonctions PHP

WBOY
WBOYoriginal
2023-06-27 13:47:12796parcourir

Introduction détaillée à l'utilisation de la fonction array_walk() dans la bibliothèque de fonctions PHP

La fonction array_walk() est une fonction de tableau très couramment utilisée en PHP. Sa fonction est d'exécuter une fonction définie par l'utilisateur pour chaque élément du tableau. L'utilisation de la fonction array_walk() peut grandement simplifier l'écriture de code et améliorer l'efficacité du programme, en particulier lors du traitement des tableaux.

Usage

array_walk() la syntaxe de la fonction est la suivante :
array_walk (array &$array , callable $callback [, Mixed $userdata = NULL ] )

Description du paramètre :

  1. $array : doit, doit être tableau traité.
  2. $callback : une fonction qui doit être exécutée.
  3. $userdata : paramètres supplémentaires facultatifs transmis à la fonction de rappel, qui peuvent être une valeur ou un tableau.

Fonction de rappel

La fonction de rappel est la partie la plus importante de array_walk(), elle doit être définie par vous-même. La syntaxe de base de la fonction de rappel est la suivante :
function callback_function ($array_item, $array_key, $userdata) {
//code de fonction ici
}

où :

  1. &$array_item : obligatoire, la valeur de l'élément actuel du tableau. Puisque les fonctions sont passées par référence, les éléments peuvent être utilisés directement à l'aide du symbole &.
  2. $array_key : Facultatif, la clé de l'élément actuel du tableau. Si vous souhaitez opérer sur la clé du tableau, vous pouvez utiliser ce paramètre.
  3. $userdata : paramètres supplémentaires facultatifs transmis à la fonction de rappel, qui peuvent être une valeur ou un tableau.

Exemple

Regardons un exemple d'utilisation simple :

$arr = array(1,2,3,4,5,6,7);
function multiplier(&$item, $key, $ factor) {
$item *= $factor;
}
array_walk($arr, 'multiply', 3);
print_r($arr);

Le résultat de sortie est le suivant :

Array
(
[0] = > 3
[1] => 6
[2] => 9
[3] => 21
)

Dans l'exemple ci-dessus, nous définissons d'abord un tableau $arr, puis définissons une fonction de rappel multiplier(). Cette fonction de rappel reçoit trois paramètres. Le premier paramètre est la valeur de l'élément actuel du tableau, le deuxième paramètre est la valeur clé de l'élément actuel du tableau et le troisième paramètre est le paramètre supplémentaire transmis à la fonction de rappel, c'est-à-dire le multiplicateur.

Dans la fonction array_walk(), nous appelons le tableau $arr comme premier paramètre, multiplie() comme deuxième paramètre et passons le nombre 3 comme troisième paramètre à la fonction multiplier(). De cette façon, la fonction multiplier() multiplie chaque élément du tableau par 3 et modifie directement la valeur du tableau, aboutissant finalement à un nouveau tableau.

Notes

La fonction de rappel doit avoir un paramètre, qui est la valeur de l'élément actuel du tableau. Si vous devez utiliser la valeur de clé actuelle, vous devez ajouter un deuxième paramètre.

    Pour les tableaux non références, leurs valeurs ne peuvent pas être modifiées directement dans la fonction de rappel.
  1. Les valeurs clés des éléments du tableau dans la fonction de rappel sont cohérentes avec le tableau d'origine. Même lorsque array_walk() est utilisé pour traiter un tableau avec des clés non numériques, les valeurs clés du tableau sont toujours conservées. . La fonction
  2. Résumé
array_walk() est une fonction de tableau très puissante qui peut nous aider à simplifier et à améliorer le traitement des tableaux. Dans le développement réel, nous pouvons définir des fonctions de rappel en fonction de nos propres besoins et utiliser de manière flexible la fonction array_walk() pour rendre le code plus concis et efficace.

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