Quisiera saber como puedo recorrer un arraymultidimensional asociativa para transformarlo en un diagrama, o lo que es lo mismo una estructura de red de personas.
Tengo un script que construye el array de la manera que uno desee en la configuración. Un solo nivel, varios niveles, con limitación de personas por nivel, sin limitacion de personas por nivel ni limitacion de niveles, etc...
Cuando se configura una limitacion de niveles se me hace facil pues sé cuántas veces he de recorrer el array hasta llegar al ultimo nivel, pero el problema surge cuando no existe tal limitacion.
Podria hacer un loop que se repita hasta 1000 veces y asi cubriria todos los niveles ya que es muy complicado llegar a los 1000, pero lo considero una mala práctica y quisiera saber si hay alguna otra manera para que cuando detecte que exista un array dentro de otro, acceda a ese nivel, lo recorra a lo ancho y que si detecta otro nivel hago lo mismo y así hasta que llegue al ultimo que hay.
El array es asociativo, asi que dentromde todos los campos de cada registro, hay uno de ellos que es el que contiene el array del siguiente nivel.
Ejemplo:
Código PHP:
array(
array(
'Nombre' => 'Perico',
'Referidos' => array(
'Nombre' => 'Perico Hijo',
'Referidos' => array(
'Nombre' => 'Perico Nieto',
'Referidos' => '',
),
),
),
array(
'Nombre' => 'Pascual',
'Referidos' => array(
'Nombre' => 'Pascual Amante',
'Referidos' => '',
),
)
)
Estoy cerca de resolverlo, pero necesitaria un empujoncito porque el tema me tiene un poco cansado.
Gracias