迅速确定php多维数组的深度的方法

yipeiwu_com5年前PHP代码库
例如有一个多维数组:
复制代码 代码如下:

array(
array(
array(1,3,4),
array(
array(
1,2,3
)
)
),
array(
array(1,2),
array(1)
)
)

这个数组的深度就是5,那么如何快速的确定一个数组深度。

(PS:T不错的PHP Q扣峮:276167802,验证:csl)

其实,只是上面的答案应该再进行排序就可以了。下面清源分享一个简单的计算深度函数:
复制代码 代码如下:

<?php
function array_depth($array) {
$max_depth = 1;


foreach ($array as $value) {
if (is_array($value)) {
$depth = array_depth($value) + 1;


if ($depth > $max_depth) {
$max_depth = $depth;
}
}
}
return $max_depth;
}

$array = array( array("11"), array(),array( array(array("5", "6"), "7", "8")),array( array(array("5", "6"), "7", "8")), "9", "10");
echo array_depth($array);
?>

希望本文对广大php开发者有所帮助,感谢您阅读本文。

相关文章

解析PHP无限级分类方法及代码

解析PHP无限级分类方法及代码

无论你要构建自己的论坛,在你的网站上发布消息还是书写自己的CMS程序,你都会遇到要在数据库中存储层次数据的情况。同时,除非你使用一种像XML的数据库,否则关系数据库中的表都不是层次结构的...

PHP之将POST数据转化为字符串的实现代码

主要用途就是记录POST过来的参数; 以下函数主要原理还是应用递归方式,将多维数组转化为一维数组进行,最后进行数组转字符串处理既可拿到POST过来的数据字符串化; 核心代码: /**...

解析dedeCMS验证码的实现代码

如下所示:复制代码 代码如下:<?php$rndstring = '';for($i=0; $i<4; $i++) $rndstring .= chr(mt_rand(65,...

php字符集转换

PHP通过iconv将字符串从GBK转换为UTF8字符集。 1. iconv()介绍 iconv函数可以将一种已知的字符集文件转换成另一种已知的字符集文件。例如:从GB2312转换为U...

php删除二维数组中的重复值方法

实例如下所示: //二维数组去掉重复值 public function a_array_unique($array){ $out = array(); foreach (...