array_walk

array_walk -- Exécute une fonction sur chacun des membres d'un tableau.

Description

int array_walk ( array arr, string func, mixed userdata)

array_walk( ) exécute la fonction func avec chaque élément du tableau arr . Les éléments sont passés en tant que premier argument de la fonction func . func doit être une fonction définie par l ' utilisateur , et non pas une fonction native PHP . Vous ne pouvez pas utiliser array_walk( ) directement avec str2lower( ) , il faut absolument passer par une fonction utilisateur .

Si func a besoin de plus d ' un argument , une alerte sera générée pour chaque appel de func . Ces alertes sont supprimées en ajoutant le suffixe ' @ ' avant l'appel de array_walk( ) ou simplement en utilisant error_reporting( ) .

Si func doit travailler avec les véritables valeurs du tableau , spécifiez que le premier paramètre de func doit être passé par référence . Alors , les éléments seront directement modifiés dans le tableau .

Passer les clés et userdata à func a été ajouté en PHP 4.0 .

En PHP 4 , reset( ) doit être appelé si nécessaire , car array_walk( ) ne réinitialise pas automatiquement le tableau .

Exemple 1 . Exemple avec array_walk( )

 
?php

 
$fruits

 
=

 
array

 
(

 
"d"=

 
"citron"

 
,

 
"a"=

 
"orange"

 
,

 
"b"=

 
"banane"

 
,

 
"c"=

 
"pomme")

 
;

 
function

 
test_alter

 
(

 
$item1

 
,

 
$key

 
,

 
$prefix

 
)

 
{

 
$item1

 
=

 
"$prefix

 
:

 
$item1"

 
;

 
  }

 
function

 
test_print

 
($item2

 
,

 
$key

 
)

 
{

 
echo

 
"$key

 
.

 
$item2

 
br

 
\n"

 
;

 
  }

 
array_walk

 
($fruits

 
,

 
'test_print')

 
;

 
reset

 
($fruits)

 
;

 
array_walk

 
($fruits

 
,

 
'test_alter'

 
,

 
'fruit')

 
;

 
reset

 
($fruits)

 
;

 
array_walk

 
($fruits

 
,

 
'test_print')

 
;

 
?





Voir aussi each( ) et list( ) .