array_walk

array_walk -- Použít uživatelskou funkci na všechny prvky pole

Popis

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

Aplikuje funkci func na všechny prvky pole arr . Funkci func se jako první argument předá hodnota a jako druhý klíč . Pokud je přítomen argument userdata , bude uživatelské funkci předán jako třetí argument .

Pokud func vyžaduje více než dva nebo tři argumenty ( v závislosti na userdata ) , pro každé volání func z array_walk( ) se vygeneruje varování . Tato varování se dají potlačit přidáním znaku ' @ ' před volání array_walk( ) nebo pomocí error_reporting( ) .

Poznámka : Pokud func potřebuje pracovat přímo s daným polem , první argument func se musí předávat odkazem . Všechny změny těchto hodnot se pak promítnou přímo v arr .

Poznámka : Druhý a třetí argument func byly přidány v PHP 4.0 .

V PHP 4 je třeba volat podle potřeby reset( ) , protože array_walk( ) sama vstupní pole neresetuje .

Příklad 1 . Ukázka array_walk( )

 
$fruits

 
=

 
array

 
(

 
"d"=

 
"lemon"

 
,

 
"a"=

 
"orange"

 
,

 
"b"=

 
"banana"

 
,

 
"c"=

 
"apple")

 
;

 
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')

 
;





Viz také : each( ) a list( ) .