PHP获取一个数组的深度

PHP获取一个数组的深度

<?php
//array-deep.php
function array_depth($array){
    $max_deep = 1;
    foreach($array as $value){
        if(is_array($value)){
            $deep = array_depth($value) + 1;
            // 递归完毕后,判断每次递归的深度是否大于当前的最大深度
            if($deep > $max_deep){
                $max_deep = $deep;
            }
        }
    };

    return $max_deep;
}
$array = array( 
            array("11"), 
            array(),
            array( 
                    array(
                            array("5", "6"), 
                            "7", 
                            "8"
                        )
            ),
            array( 
                array(
                        array("5", 
                            array(
                                'name' => 'here',
                            )
                        ),
                         "7",
                         "8"
                     )
            ), 
            "9", 
            "10"
    );
echo array_depth($array);  //5
?>

 

posted @ 2016-02-24 19:53  bybelief  阅读(2638)  评论(0编辑  收藏  举报