摘要:在我们开发过程中,判断数组为空时你会想到什么方法呢?首先想到的应该是循环数组,然后在判断是不是为空对吧?今天有一个简单的方法,用array_...
在我们开发过程中,判断数组为空时你会想到什么方法呢?首先想到的应该是循环数组,然后在判断是不是为空对吧?今天有一个简单的方法,用array_filter函数来实现:
例子:
$arr = array( 'name' => 'myname', 0 => false, 'age' => 18, 1 => '', 'sex' => 'nv', 2 => null, 'email' => '123456@qq.com', 3 => 0, 4 => 'test' ); var_dump(array_filter($arr));
第二种方法就是自己写一个函数,这种就比较灵活了,然后在用array_filter的回调函数来实现,array_filter() 函数用回调函数过滤数组中的元素,如果自定义过滤函数返回 true,则被操作的数组的当前值就会被包含在返回的结果数组中, 并将结果组成一个新的数组。如果原数组是一个关联数组,键名保持不变。
$arr = array( 'name' => 'myname', 0 => false, 'age' => 18, 1 => '', 'sex' => 'nv', 2 => null, 'email' => '123456@qq.com', 3 => 0, 4 => 'test' ); function del_empty($val){ //当传入的值为空值时,返回false,也就是去掉该数组中的空值 if($val === ''){ return false; } return true; } var_dump(array_filter($arr, 'del_empty'));