Función array_walk() de PHP

Ejemplo

Aplicar una función personalizada a cada elemento del array:

<?php
function myfunction($value,$key)
{
echo "La clave $key tiene el valor $value<br>";
}
$a=array("a"=>"red","b"=>"green","c"=>"blue");
array_walk($a,"myfunction");
?>

Ejemplo de ejecución

Definición y uso

La función array_walk() aplica una función personalizada a cada elemento del array. En la función, los nombres de clave y los valores del array son parámetros.

Nota:Puede cambiar el valor de un elemento de array cambiando el primer parámetro de la función personalizada a una referencia: &$value (ver ejemplo 2).

Consejo:Para operar con arrays más profundos (un array que contiene otro array), utilice array_walk_recursive() Función.

Sintaxis

array_walk(array,myfunction,userdata...)
Parámetros Descripción
array Obligatorio. Define el array.
myfunction Obligatorio. El nombre de la función personalizada del usuario.
userdata,... Opcional. Define los parámetros de la función personalizada del usuario. Puede pasarle a esta función cualquier cantidad de parámetros.

Descripción

La función array_walk() aplica una función de callback a cada elemento del array. Si tiene éxito, devuelve TRUE, de lo contrario devuelve FALSE.

En casos típicos myfunction Acepta dos parámetros.array El valor del parámetro como primer, y el nombre del clave como segundo. Si se proporcionan parámetros opcionales userdata Será pasado como tercer parámetro a la función de callback.

si myfunction si la función necesita más parámetros de los proporcionados, se llama a array_walk() cada vez myfunction producirá un error de nivel E_WARNING. Estas advertencias se pueden suprimir agregando el operador de error de PHP @ antes de la llamada a array_walk() o usando error_reporting().

Nota:Si la función de callback necesita actuar directamente sobre los valores del array, puede especificar el primer parámetro de la función de callback como una referencia: &$value. (Véase el ejemplo 3).

Nota:asignar a userdata pasada a myfunction es una nueva función añadida en PHP 4.0.

Detalles técnicos

Valor de retorno: Si tiene éxito, devuelve TRUE, de lo contrario devuelve FALSE.
Versión de PHP: 4+

Más ejemplos

Ejemplo 1

Establecer un parámetro:

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

Ejemplo de ejecución

Ejemplo 2

Cambiar el valor de un elemento de array (tenga en cuenta &$value):

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

Ejemplo de ejecución