php去除数组空值元素:array_filter去除数组空值的例子

发布时间:2020-08-26编辑:脚本学堂
php去除数组中空值元素的方法,在php中使用array_filter去除数组空值,php去除数组空值的二种方法及效率对比,供大家学习参考。

php去除数组空值元素

php去掉数组中空值,可以用foreach或while循环遍历数组,然后去掉空值。

利用这两个语法结构来删除数组中的空元素,例子:
 

复制代码 代码示例:
<?php 
foreach($arr as $k=>$v){
 if(!$v) unset($arr[$k]); 
}
 

以上代码,当数据量很大,效率并不高。
foreach是将当前操作的数组进行copy,每操作一下foreach,都是copy了一个变量,页面里面如果有太多的foreach,会是一个很大的消耗。

可以使用array_filter函数去除数组中空值。

array_filter函数的功能是利用回调函数来对数组进行过滤,如果没有回调函数,那么默认就是删除数组中值为false的项目。如下示例:
 

复制代码 代码示例:
<?php
$entry = array(  
 0 => 'foo',  
 1 => false,  
 2 => -1,  
 3 => NULL,  
 4 => ''
);
print_r(array_filter($entry));
 

输出值:
Array  
(  
    [0] => foo  
    [2] => -1  
)

建议:php数组操作与字符串操作是php编程的重点知识,这其中的函数都必须要熟练,在以后的php开发中将会很有帮助。