array_walk_recursive - modifica chaves e valores
Como você pode modificar chaves e valores comarray_walk_recursive
??
Aqui apenas os valores são codificados
function _utf8_encode($arr){
array_walk_recursive($arr, 'utf8_enc');
return $arr;
}
function utf8_enc(&$value, &$key){
$value = utf8_encode($value);
$key = utf8_encode($key);
}