php数组如何按顺序输出,php多维数组按顺序打印的方法?

bVkHO7

bVkHPH

就是像上面一张图片那样的,不定深度的多维数组,按照一定规律的缩进和换行的形式打印出来,就像下面那张图片那样的。

我自己写不出来,感觉有很多问题,希望帮我看看,谢谢。

function self_print($array,$count = 0)

{

$output = '';

while(list($key,$value) = each($array))

{

$output .= str_repeat(' ',$count).$key.'=>';

if(is_array($value))

{

$count++;

$output .= '

';

$tmp = self_print($value,$count);

$output .= $tmp;

}

else

{

$output .= $value;

}

$output .= '

';

}

return $output;

}

回复内容:

bVkHO7

bVkHPH

就是像上面一张图片那样的,不定深度的多维数组,按照一定规律的缩进和换行的形式打印出来,就像下面那张图片那样的。

我自己写不出来,感觉有很多问题,希望帮我看看,谢谢。

function self_print($array,$count = 0)

{

$output = '';

while(list($key,$value) = each($array))

{

$output .= str_repeat(' ',$count).$key.'=>';

if(is_array($value))

{

$count++;

$output .= '

';

$tmp = self_print($value,$count);

$output .= $tmp;

}

else

{

$output .= $value;

}

$output .= '

';

}

return $output;

}

如果是要图一的话可以试试var_export和print_r,如果是要图二的话用下面的函数吧。

function printArrayRecursive($array, $return = false) {

$html = "";

foreach($array as $key => $arr) {

$html .= "

";

if( is_array( $arr ) ) {

$html .= "

$key =>";

$html .= printArrayRecursive( $arr, true );

} else $html .= "

$key => $arr";

$html .= "";

}

$html .= "";

if( $return ) return $html;

else echo $html;

}

不在乎里面有数据类型输出,就试一下

echo '';

echo print_r($a);

echo '';

或者

echo '';

echo json_encode($a);

echo '';

json那种会输出

bVkHUf

实际上是用css控制的,因此,你将css样式 copy到你的项目,然后在使用给相应字段加上class就能达到jsonview这种效果。

bVkHVE

@公子 打印出来是这样的

树型你要递归调用。

相关标签:php

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值