array_filter() 过滤数组中的空白元素

<?php
function myfunction($v) 
{
if ($v==="Horse")
    {
    return true;
    }
return false;
}
$a=array(0=>"Dog",1=>"Cat",2=>"Horse");
print_r(array_filter($a,"myfunction"));
?>

 

判断数组中元素是否为空的时候,一般用foreach,因为具体应用中多是要foreach,其实如果单纯的过滤php空数组的话,可以使用php函数array_filter() .

array array_filter ( array [, callback callback] )

array_filter() 依次将 array 数组中的每个值传递到 callback 函数。如果 callback 函数返回 TRUE,则 array 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变。

如果没有提供 callback 函数,array_filter() 将删除 array 中所有等值为 FALSE 的条目.这也就是过滤数组空白元素的精华所在.
如下例:
Php代码

<?php   
$entry = array(   
              0 => 'k686绿色软件',   
              1 => false,   
              2 => 1,   
              3 => null,   
              4 => '',   
              5 => 'http://www.k686.com',   
              6 =>'0'  
           );   
print_r(array_filter($entry));   
?>   


上面代码输出结果为:

Array 
( 
    [0] => k686绿色软件 
    [2] => 1 
    [5] => http://www.k686.com 
) 

 


可以看出,false,null,和真正的''空白以及0都被过滤了,而且数组的下标没有改变.

$arr=array_filter($arrl);

也可以这样用的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值