(PHP 4, PHP 5)
array_walk — Aplicar una función de usuario a cada miembro de un array
   Aplica la función definida por el usuario dada por callback a cada
   elemento del array dado por array.
  
   array_walk() no le afecta el puntero de arrays
   interno de array. array_walk()
   recorrerá el array completo sin tener en cuenta la posición del puntero.
  
arrayEl array de entrada.
callback
       Normalmente, callback asume dos parámetros.
       El primero, los valores de los parámetros de array, y el segundo
       la clave/índice.
      
Nota:
Si
callbacknecesita trabajar con los valores reales del array, especifique el primer parámetro decallbackcomo una referencia. Así, cualquier cambio hecho a esos elementos serán hechos al mismo array original.
Nota:
Muchas funciones internas (por ejemplo strtolower()) lanzarán una advertencia si se pasan más argumentos de los esperados y no son utilizables directamente como
callback.
       Sólo se pueden cambiar potencialmente los valores del parámetro array;
       no se puede alterar su estructura, esto es, el programador no puede
       añadir, destruir o reordenar elementos. Si la llamada de retorno no respeta este
       requisito, el comportamiento de esta función será indefinido e
       impredecible.
      
userdata
       Si se proporciona el parámetro opcional userdata, éste
       será pasado como el tercer parámetro de la función dada por
       callback.
      
   Devuelve TRUE en caso de éxito o FALSE en caso de error.
  
   Si la función callback requiere más parámetros que
   los proporcionados, se generará un error de nivel 
   E_WARNING cada vez que array_walk()
   llame a callback.
  
Ejemplo #1 Ejemplo de array_walk()
<?php
$frutas = array("d" => "limón", "a" => "naranja", "b" => "banana", "c" => "manzana");
function test_alter(&$elemento1, $clave, $prefijo)
{
    $elemento1 = "$prefijo: $elemento1";
}
function test_print($elemento2, $clave)
{
    echo "$clave. $elemento2<br />\n";
}
echo "Antes ...:\n";
array_walk($frutas, 'test_print');
array_walk($frutas, 'test_alter', 'fruta');
echo "... y después:\n";
array_walk($frutas, 'test_print');
?>
El resultado del ejemplo sería:
Antes ...: d. limón a. naranja b. banana c. manzana ... y después: d. fruta: limón a. fruta: naranja b. fruta: banana c. fruta: manzana