迅速确定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 5 提供了一种新的面向对象的错误处理方法。 异常处理用于在指定的错误(异常)情况发生时改变脚本的正常流程。这种情况称为异常。 当异常被触发时,通常会发生:...

PHP中Date()时间日期函数的使用方法小结

语法 date(format,timestamp)参数 描述 format 必需。规定时间戳的格式。 timestamp 可选。规定时间戳。默认是当前的日期和时间 要找出前一天的时间就是...

PHP QRCODE生成彩色二维码的方法

本文实例讲述了PHP QRCODE生成彩色二维码的方法。分享给大家供大家参考,具体如下: 这里重写了下PHPQRCODE,精简了部分代码,合并PNG GIF JPEG的输出. 参数说明:...

php设计模式之委托模式

委托模式是软件设计模式中的一项基本技巧。在委托模式中,有两个对象参与处理同一个请求,接受请求的对象将请求委托给另一个对象来处理。委托模式是一项基本技巧,许多其他的模式,如状态模式、策略模...

PHP版自动生成文章摘要

自动生成文章摘要[JavaScript 版本]。 我们在写BLOG这样的程序时经常需要显示文章前一部分的,但是又怕不恰当的截断破坏封闭标签以造成整 个文档结构破坏,使用我的函数...