PHP获取任意数组的长度例子

PHP经常处理未知深度的数组,这种情况一般用递归可以处理,但是对于数组深度,还是知道的好。

获取数组长度:

  1. /**
  2. * @description 获取数组长度
  3. * @param array array
  4. * @return int length of array
  5. */
  6. function array_len($array = array()) {
  7. $len = 1;
  8. foreach ($array as &$value) {
  9. if (is_array($value)) {
  10. $len = array_len($value) + 1;
  11. }
  12. }
  13. return $len;
  14. }

测试:

  1. $arr = array(
  2. array(
  3. array(
  4. array(
  5. array('id'=>1)
  6. )
  7. )
  8. )
  9. );
  10. $arr_len = array_len($arr);
  11. var_dump($arr_len);
  12. //result
  13. int(5)