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