Funzione array_walk() di PHP

Esempio

Applica una funzione personalizzata a ogni elemento dell'array:

<?php
function myfunction($value,$key)
{
echo "La chiave $key ha il valore $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
?>

Esempio di esecuzione

Definizione e uso

La funzione array_walk() applica una funzione personalizzata a ogni elemento dell'array. Nella funzione, i nomi delle chiavi e i valori dell'array sono parametri.

Note:Puoi modificare il valore degli elementi dell'array specificando il primo parametro della funzione personalizzata come riferimento: &$value (vedi esempio 2).

Suggerimento:Per operare su array più profondi (un array contenente un altro array), utilizzare array_walk_recursive() Funzione.

Sintassi

array_walk(array,myfunction,userdata...)
Parametri Descrizione
array Obbligatorio. Specifica l'array.
myfunction Obbligatorio. Il nome della funzione personalizzata utente.
userdata,... Opzionale. Specifica i parametri della funzione personalizzata utente. Puoi passare alla funzione qualsiasi numero di parametri.

Descrizione

La funzione array_walk() applica una funzione di callback a ogni elemento dell'array. Se ha successo restituisce TRUE, altrimenti FALSE.

Nel caso tipico myfunction Accetta due parametri.array Il valore del parametro è il primo, il nome della chiave è il secondo. Se vengono forniti parametri opzionali userdata Sarà trasmesso come terzo parametro alla funzione di callback.

Se myfunction Se il numero di parametri necessari per la funzione è maggiore di quelli forniti, ogni chiamata a array_walk() myfunction Producirà un errore di livello E_WARNING. Questi avvisi possono essere soppressi aggiungendo l'operatore di errore di PHP @ prima della chiamata a array_walk() o usando error_reporting().

Note:Se la funzione di callback deve agire direttamente sui valori dell'array, è possibile specificare come primo parametro della funzione di callback un riferimento: &$value. (Vedere esempio 3)

Note:Associare il nome chiave e userdata Passato a myfunction In è stata aggiunta in PHP 4.0.

Dettagli tecnici

Valore di ritorno: Restituisce TRUE se il processo è stato eseguito con successo, altrimenti FALSE.
Versione PHP: 4+

Più esempi

Esempio 1

Impostare un parametro:

<?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");
?>

Esempio di esecuzione

Esempio 2

Modificare il valore di un elemento dell'array (attenzione a &$value):

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

Esempio di esecuzione