php递归调用删除数组空值元素的方法

这篇文章主要介绍了php递归调用删除数组空值元素的方法,涉及php递归调用操作数组的相关技巧,非常具有实用价值,需要的朋友可以参考下。

本文实例讲述了php递归调用删除数组空值元素的方法,分享给大家供大家参考,具体如下:

该函数可以删除数组里的所有空值元素,包含空字符串,空的数组等等。

  1. function array_remove_empty($arr){
  2. $narr = array();
  3. while(list($key, $val) = each($arr)){
  4. if (is_array($val)){
  5. $val = array_remove_empty($val);
  6. // does the result array contain anything?
  7. if (count($val)!=0){
  8. // yes :-)
  9. $narr[$key] = $val;
  10. }
  11. }
  12. else {
  13. if (trim($val) != ""){
  14. $narr[$key] = $val;
  15. }
  16. }
  17. }
  18. unset($arr);
  19. return $narr;
  20. }

演示范例:

array_remove_empty(array(1,2,3,'',array(),4)) => returns array(1,2,3,4)