php多维数组按顺序打印的方法?
巴扎黑
巴扎黑 2017-04-10 15:18:15
[PHP讨论组]

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

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

function self_print($array,$count = 0)
{
    $output = '';

    while(list($key,$value) = each($array))
   {
       $output .= str_repeat('  ',$count).$key.'=>';
       if(is_array($value))
       {
           $count++;


           $output .= '<br/>';

           $tmp = self_print($value,$count);
           $output .= $tmp;
        }
        else
        {

            $output .= $value; 
        }
    $output .= '<br/>';
}
return $output;
}
巴扎黑
巴扎黑

全部回复(4)
PHP中文网

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

function printArrayRecursive($array, $return = false) {
    $html = "<ul>";
    foreach($array as $key => $arr) {
        $html .= "<li>";
        if( is_array( $arr ) ) {
            $html .= "<p>$key => </p>";
            $html .= printArrayRecursive( $arr, true );
        } else $html .= "<p>$key => $arr</p>";
        $html .= "</li>";
    }
    $html .= "</ul>";
    if( $return ) return $html;
    else echo $html;
}
怪我咯

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

echo '<pre>';
echo print_r($a);
echo '</pre>';

或者

echo '<pre>';
echo json_encode($a);
echo '</pre>';

json那种会输出

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

高洛峰

@公子 打印出来是这样的

ringa_lee

树型你要递归调用。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号