Ver Mensaje Individual
  #4 (permalink)  
Antiguo 19/07/2015, 20:41
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años
Puntos: 977
Respuesta: Recorrer Array Multidimensional

Con esta estructura puedes imprimir todos los datos del array:

Código PHP:
Ver original
  1. foreach ($data as $index => $value){
  2.     if (is_array($value)){
  3.         foreach ($value as $ind => $val){
  4.             if (is_array($val)){
  5.                 foreach ($val as $i => $v){
  6.                     echo "$i : $v <br />";
  7.                 }
  8.             }
  9.             else{
  10.                 echo "$ind : $val <br />"; 
  11.             }
  12.         }
  13.     }
  14.     else{
  15.         echo "$index : $value <br />";
  16.     }
  17. }

El resultado, para el ejemplo, sería el siguiente:

Código HTML:
Ver original
  1. id : ID
  2. name : form1
  3. fieldset : Otro
  4. type : text
  5. hola : HOLA

Como verás, el value de cada bucle, viene siendo el array del siguiente, por lo que antes de imprimir un dato, compruebo si es un array para iterarlo o imprimirlo directamente si no lo es.

Trata de adaptar esto a lo que necesitas.

Saludos

EDITO: Hice una abstracción del algoritmo de arriba en una función recursiva para que funcione con cualquier cantidad de niveles en un array.

Código PHP:
Ver original
  1. function fn($arg){
  2.     foreach ($arg as $key => $val){
  3.         if (is_array($val)){
  4.             fn($val);
  5.         }
  6.         else{
  7.             echo "$key : $val\n";
  8.         }
  9.     }
  10. }
  11.  
  12. fn($data);

Imprime lo mismo.
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand

Última edición por Alexis88; 19/07/2015 a las 20:50 Razón: Abstracción