PHP array_walk() functie

Voorbeeld

Past de gebruikersdefinieerde functie toe op elk element van de array:

<?php
function myfunction($value,$key)
{
echo "The key $key has the value $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
?>

Uitvoervoorbeeld

Definitie en gebruik

De functie array_walk() past de gebruikersdefinieerde functie toe op elk element van de array. In de functie zijn de sleutelnaam en de sleutelwaarde parameters.

Opmerking:U kunt de waarde van het eerste parameter van de gebruikersdefinieerde functie opgeven als een referentie: &$value, om de waarde van het element van de array te wijzigen (zie voorbeeld 2).

Tip:Als u diepere arrays wilt bewerken (een array bevat een andere array), gebruik dan array_walk_recursive() Functie.

Syntax

array_walk(array,myfunction,userdata...)
Parameters Beschrijving
array Verplicht. Stelt de array vast.
myfunction Verplicht. De naam van de gebruikersdefinieerde functie.
userdata,... Optioneel. Stelt de parameters van de gebruikersdefinieerde functie vast. U kunt aan deze functie willekeurig veel parameters doorgeven.

Beschrijving

De functie array_walk() past de callback-functie toe op elk element van de array. Als het succesvol is, wordt TRUE geretourneerd, anders FALSE.

In typische gevallen myfunction Accepteert twee parameters.array De waarde van het parameter als eerste, de naam van het sleutel als tweede. Als er optionele parameters zijn verstrekt userdata Zal als derde parameter worden doorgegeven aan de callback-functie.

als myfunction die nodig zijn, wordt er tijdens elke aanroep van array_walk() myfunction zal altijd een E_WARNING-niveau fout veroorzaken. Deze waarschuwingen kunnen worden onderdrukt door de PHP-foutoperator @ voor de array_walk() aanroep toe te voegen, of door error_reporting() te gebruiken.

Opmerking:Als de callback-functie direct moet werken op de waarden in het array, kan de eerste parameter van de callback-functie worden opgegeven als een referentie: &$value. (Zie voorbeeld 3)

Opmerking:Koppel de sleutelnaam en userdata doorgestuurd naar myfunction is nieuw toegevoegd in PHP 4.0.

Technische details

Retournerende waarde: Retourneert TRUE als succesvol, anders FALSE.
PHP Versie: 4+

Meer voorbeelden

Voorbeeld 1

Stel een parameter in:

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

Uitvoervoorbeeld

Voorbeeld 2

Wijzig de waarde van een array element (let op: &$value):

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

Uitvoervoorbeeld