Home > Backend Development > PHP Tutorial > php多维数组按顺序打印的方法?

php多维数组按顺序打印的方法?

WBOY
Release: 2016-06-06 20:38:37
Original
1164 people have browsed it

php多维数组按顺序打印的方法?

php多维数组按顺序打印的方法?

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

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

<code>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;
}
</code>
Copy after login
Copy after login

回复内容:

php多维数组按顺序打印的方法?

php多维数组按顺序打印的方法?

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

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

<code>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;
}
</code>
Copy after login
Copy after login

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

<code>function printArrayRecursive($array, $return = false) {
    $html = "<ul>";
    foreach($array as $key => $arr) {
        $html .= "<li>";
        if( is_array( $arr ) ) {
            $html .= "<div>$key => </div>";
            $html .= printArrayRecursive( $arr, true );
        } else $html .= "<div>$key => $arr</div>";
        $html .= "</li>";
    }
    $html .= "</ul>";
    if( $return ) return $html;
    else echo $html;
}
</code>
Copy after login

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

<code>echo '<pre class="brush:php;toolbar:false">';
echo print_r($a);
echo '
Copy after login
';

或者

<code>echo '<pre class="brush:php;toolbar:false">';
echo json_encode($a);
echo '
Copy after login
';

json那种会输出
php多维数组按顺序打印的方法?
实际上是用css控制的,因此,你将css样式 copy到你的项目,然后在使用给相应字段加上class就能达到jsonview这种效果。

php多维数组按顺序打印的方法?

@公子 打印出来是这样的

树型你要递归调用。

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template