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


在PHP中,要迅速确定一个多维数组的深度,你可以使用递归函数来遍历数组并计算其最大深度。下面是一个简洁且高效的实现方法:


function arrayDepth($array) {
    $maxDepth = 1; // 至少有一个层级
    foreach ($array as $value) {
        if (is_array($value)) {
            $currentDepth = arrayDepth($value) + 1; // 递归调用并加1
            $maxDepth = max($maxDepth, $currentDepth);
        }
    }
    return $maxDepth;
}

// 示例用法
$multiDimensionalArray = [
    [1, 2, [3, 4]],
    [5, [6, [7, 8]]],
    9
];

echo arrayDepth($multiDimensionalArray); // 输出:4

这个函数`arrayDepth`接收一个数组作为参数,并初始化最大深度为1(因为任何数组至少有一个层级)。然后,它遍历数组中的每个元素。如果元素是数组,则递归调用`arrayDepth`函数,并将返回的深度加1。通过比较所有子数组的深度,我们可以找到并返回最大的深度。

这个实现是简洁且高效的,因为它直接通过递归遍历数组来找到最深的层级,没有使用额外的数据结构或复杂的逻辑。