Maison >développement back-end >tutoriel php >Comment utiliser la fonction array_walk_recursive en PHP pour appliquer la fonction de rappel aux éléments d'un tableau multidimensionnel

Comment utiliser la fonction array_walk_recursive en PHP pour appliquer la fonction de rappel aux éléments d'un tableau multidimensionnel

WBOY
WBOYoriginal
2023-06-26 11:46:23751parcourir

En PHP, la fonction array_walk_recursive peut être utilisée pour appliquer une fonction de rappel à tous les éléments d'un tableau multidimensionnel. Cet article explique comment utiliser la fonction array_walk_recursive.

  1. Qu'est-ce qu'un tableau multidimensionnel

En PHP, les tableaux peuvent être multidimensionnels, c'est-à-dire qu'un tableau peut contenir un autre tableau. Par exemple, le tableau suivant est un tableau bidimensionnel :

$array = array(
    array('name' => 'john', 'age' => 20),
    array('name' => 'mary', 'age' => 25)
);
  1. fonction Array_walk_recursive

La fonction Array_walk_recursive est utilisée pour appliquer une fonction de rappel à tous les éléments d'un tableau multidimensionnel. Sa syntaxe est la suivante :

array_walk_recursive ( array &$array , callable $callback [, mixed $userdata = NULL ] ) : bool

Description du paramètre :

  • $array : le tableau multidimensionnel à traiter
  • $callback : la fonction de rappel appliquée aux éléments du tableau
  • $userdata : les données utilisateur facultatives, passées au callback function

Renvoie vrai en cas de succès, sinon renvoie faux.

  1. Utilisation de la fonction array_walk_recursive

Ce qui suit est un exemple d'utilisation de la fonction array_walk_recursive. Supposons que nous ayons un tableau multidimensionnel contenant les noms et les âges des utilisateurs, et que nous souhaitions ajouter 10 à chaque âge et imprimer le nom et le nouvel âge de chaque utilisateur.

function add_age(&$item, $key) {
    if ($key == 'age') {
        $item += 10;
    }
}

$array = array(
    array('name' => 'john', 'age' => 20),
    array('name' => 'mary', 'age' => 25)
);

array_walk_recursive($array, 'add_age');

foreach ($array as $key => $value) {
    echo $value['name'] . ' ' . $value['age'] . '
'; }

Dans cet exemple, nous définissons une fonction de rappel add_age qui ajoute 10 à tous les âges. Nous transmettons ensuite cette fonction de rappel à la fonction array_walk_recursive, en lui transmettant notre tableau multidimensionnel. Enfin, nous utilisons une boucle foreach pour imprimer le nom et le nouvel âge de chaque utilisateur. La fonction

  1. Résumé

array_walk_recursive peut facilement appliquer une fonction de rappel à tous les éléments d'un tableau multidimensionnel. C'est très utile lorsqu'il s'agit de tableaux imbriqués à plusieurs niveaux, ce qui peut éviter d'écrire beaucoup de code répété. Nous pouvons utiliser cette fonction pour effectuer diverses opérations, telles que le filtrage des données, la conversion, etc.

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