Funkcja PHP array_walk()

Przykład

Aplikuj funkcję użytkownika do każdego elementu tablicy:

<?php
function myfunction($value,$key)
{
echo "Klucz $key ma wartość $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
?>

Przykłady uruchomieniowe

Definicja i użycie

Funkcja array_walk() aplikuje funkcję użytkownika na każdy element tablicy. W funkcji te są parametrami klucz i wartość tablicy.

Komentarz:Możesz zmienić wartość elementu tablicy, ustawiając pierwszy parametr funkcji użytkownika jako odniesienie: &$value (zobacz przykład 2).

Wskazówka:Aby operować na głębszych tablicach (tablica zawiera inną tablicę), użyj array_walk_recursive() funkcja.

Gramatyka

array_walk(array,myfunction,userdata...)
Parametry Opis
array Wymagane. Określa tablicę.
myfunction Wymagane. Nazwa funkcji użytkownika.
userdata,... Opcjonalne. Określa parametry funkcji użytkownika. Możesz przekazać tej funkcji dowolną liczbę parametrów.

Opis

Funkcja array_walk() aplikuje funkcję zwrotną na każdy element tablicy. Zwraca TRUE, jeśli sukces, w przeciwnym razie FALSE.

W typowych przypadkach myfunction Akceptuje dwa parametry.array Wartość parametru jako pierwszy, nazwa klucza jako drugi. Jeśli dostarczono opcjonalne parametry userdata Będzie przekazywane jako trzeci parametr do funkcji zwrotnej.

jeśli myfunction jeśli funkcja wymaga więcej parametrów niż podano, to każde wywołanie array_walk() myfunction powoduje generowanie błędu stopnia E_WARNING. Te ostrzeżenia można stłumić, dodając operator błędów PHP @ przed wywołaniem array_walk() lub użyciem error_reporting().

Komentarz:Jeśli funkcja zwrotna musi bezpośrednio działać na wartościach w tablicy, można jako pierwszy parametr funkcji zwrotnej指定引用:&$value。(Zobacz przykład 3)

Komentarz:Przekazanie klucza i userdata przekazywana do myfunction w PHP 4.0 jest nowo dodana.

Szczegóły techniczne

Zwracana wartość: Zwraca TRUE, jeśli pomyślnie, w przeciwnym razie zwraca FALSE.
Wersja PHP: 4+

Więcej przykładów

Przykład 1

Ustawienie parametru:

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

Przykłady uruchomieniowe

Przykład 2

Zmiana wartości elementu tablicy (proszę zauważyć &$value):

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

Przykłady uruchomieniowe