PHP经常处理未知深度的数组,这种情况一般用递归可以处理,但是对于数组深度,还是知道的好。
获取数组长度:
代码如下 |
复制代码 |
/**
* @description 获取数组长度
* @param array array
* @return int length of array
*/
function array_len($array = array()) {
$len = 1;
foreach ($array as &$value) {
if (is_array($value)) {
$len = array_len($value) + 1;
}
}
return $len;
}
|
测试:
代码如下 |
复制代码 |
$arr = array(
array(
array(
array(
array('id'=>1)
)
)
)
);
$arr_len = array_len($arr);
var_dump($arr_len);
//result
int(5)
|