$ jobs es una matriz recuperada de una consulta DB. print_r($jobs)
espectáculos:Aplicar una función a todos los valores en una matriz
Array
(
[ID] => 131
[Title] => -bla-
[Baseline] => lorem ipsum ...
[Description] => <ul><li>list 1</li><li>list 2</li></ul>
[EventID] => 1008
)
Array
(
[ID] => 132
[Title] => -bla 2-
[Baseline] => lorem ipsum lorem ipsum...
[Description] => <ul><li>list 1</li><li>list 2</li></ul>
[EventID] => 1009
)
etc ...
Id les gusta correr utf8_encode() en todos los valores de estas matrices. No estoy seguro de si debería usar array_map, array_walk_recursive? La salida no debe alterar los nombres de las claves del array de manera que no necesito cambiar nada en mi plantilla, por lo
<h1><?=$j['title']?></h1>
debería funcionar, aunque UTF8 codificada.
EDIT: Estoy tratando los siguientes, sin suerte
function fix_chars($key, $value)
{
return utf8_encode($value);
}
array_walk_recursive($jobs, 'fix_chars');
mira mi respuesta. el & antes del artículo $ es crucial. – ITroubs
Básicamente, la diferencia entre 'array_map' y' array_walk' es que la primera devuelve una nueva matriz, mientras que la última cambiará la matriz en su lugar. ¿Qué deseas? –