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

yipeiwu_com6年前PHP代码库

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

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

function array_remove_empty($arr){
 $narr = array();
 while(list($key, $val) = each($arr)){
  if (is_array($val)){
   $val = array_remove_empty($val);
   // does the result array contain anything?
   if (count($val)!=0){
    // yes :-)
    $narr[$key] = $val;
   }
  }
  else {
   if (trim($val) != ""){
    $narr[$key] = $val;
   }
  }
 }
 unset($arr);
 return $narr;
}

演示范例:

复制代码 代码如下:
array_remove_empty(array(1,2,3,'',array(),4)) => returns array(1,2,3,4)

希望本文所述对大家的php程序设计有所帮助。

相关文章

php求一个网段开始与结束IP地址的方法

本文实例讲述了php求一个网段开始与结束IP地址的方法。分享给大家供大家参考。具体如下: 比如:网段(192168.1.5/24),其子网掩码根据24划分为: 11111111.1111...

常用的php ADODB使用方法集锦

复制代码 代码如下:<?php        //定义数据库变量   ...

php基本函数汇总

1.统计数组元素个数 $arr = array( '1011,1003,1008,1001,1000,1004,1012', '1009', '1011,1003...

PHP二维数组排序简单实现方法

本文实例讲述了PHP二维数组排序简单实现方法。分享给大家供大家参考,具体如下: function multi_compare($a, $b) { $val_arr = array...

PHP flush 函数使用注意事项

ob_*系列函数, 是操作PHP本身的输出缓冲区. 所以, ob_flush是刷新PHP自身的缓冲区. 而flush, 严格来讲, 这个只有在PHP做为apache的Module(han...