PHP array_walk() funktion

Eksempel

Anvend en brugerdefineret funktion på hvert element i arrayet:

<?php
function myfunction($value,$key)
{
echo "Nøglen $key har værdien $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
?>

Kør eksempel

Definition og brug

array_walk() funktionen anvender en brugerdefineret funktion på hvert element i arrayet. I funktionen er arrayets nøgle og værdi parametre.

Bemærk:Du kan ændre værdien af arrayets element ved at specificere den første parameter i brugerdefinerede funktion som en reference: &$value (se eksempel 2).

Tip:Hvis du skal operere med dybere arrayer (en array indeholder en anden array), brug array_walk_recursive() Funktion.

Syntaks

array_walk(array,myfunction,userdata...)
Parametre Beskrivelse
array Obligatorisk. Bestemmer arrayet.
myfunction Obligatorisk. Navnet på brugerdefinerede funktionen.
userdata,... Valgfri. Bestemmer brugerdefinerede funktionsparametre. Du kan sende så mange parametre som du vil til denne funktion.

Beskrivelse

array_walk() funktionen anvender en tilbagekaldelsesfunktion på hver element i arrayet. Returnerer TRUE, hvis succesfuld, ellers FALSE.

I typiske tilfælde myfunction Modtager to parametre.array Værdien af parameteren som første, og nøgle navn som anden. Hvis der er givet valgfri parametre userdata Den vil blive overført som tredje parameter til tilbagekaldelsesfunktionen.

hvis myfunction funktioner kræver flere parametre end de givne, genereres der en array_walk() kald hver gang myfunction genererer en E_WARNING-niveau-fejl. Disse advarsler kan undertrykkes ved at tilføje PHP's fejloperator @ før array_walk() kaldet, eller ved at bruge error_reporting().

Bemærk:Hvis callback-funktionen skal påvirke værdierne direkte i arrayet, kan den første parameter for callback-funktionen specificeres som en reference: &$value. (Se eksempel 3).

Bemærk:Kombinerer nøglen og userdata overført til myfunction er blevet tilføjet i PHP 4.0.

Tekniske detaljer

Returværdi: Returnerer TRUE, hvis succesfuld, ellers FALSE.
PHP version: 4+

Flere eksempler

Eksempel 1

Indstil en parameter:

<?php
function myfunction($value,$key,$p)
{
echo "$key $p $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction","har værdien");
?>

Kør eksempel

Eksempel 2

Ændre værdien af et arrayelement (bemærk &$value):

<?php
function myfunction(&$value,$key)
{
$value="yellow";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
print_r($a);
?>

Kør eksempel