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(
)
.