La opción de jam1138 (
) es casi la misma que la mía, la idea es la misma, este tipo de funciones no tienen muchas variantes, se basan sobre lo mismo.
Al fin encontré el código, pero al verlo funcionar me dio vergüenza mostrarlo tal cual estaba (una persona normal no puede leer el resultado que este daba), entonces le puse un poco de color y un delimitador de niveles para que se note la profundidad. Lo modifique bastante a comparación de como estaba.
Aquí te lo dejo con un ejemplo, no sé si te servirá o si lo uses pero aquí lo dejo:
Código PHP:
$aray[] = array('sadas',4,56,89,'dario');
$aray['dari'] = array(array(12,546,3),array('asd',array(456,78,23,"dal"),56));
$aray['por'] = array(array(array(array(34,'dsaf'),12),23,5,578,35,'sdgsdsd'),'dar', 'asdasdsa' => 12);
$color = array('#000000','#93001E','#D7002B','#FF4066','#F8995A','#FACD7A','#FCDEA7','#C7FAA0');
function my_print_r($val,$delimitador,$nivel=0)
{
global $color;
foreach($val as $key => $value)
{
echo "<font color=\"".$color[$nivel]."\"><b>";
if(is_array($value))
{
$delim = $delimitador;
for($i = 0; $i < $nivel; $i++)
$delim .= $delim;
echo $delim."array [ $key ]<br>\r";
my_print_r($value,$delimitador,$nivel+1);
}else{
$delim = $delimitador;
for($i = 0; $i < $nivel-1; $i++)
$delim .= $delim;
echo $delim." [$key] => [$value]<br>\r";
}
echo "</b></font>";
}
}
my_print_r($aray,"-");
Cualquier consulta haz la que aquí estaré.
Saludos.