Php 使用in_数组时如何区分0和FALSE
我有一个函数来过滤数组中不需要的值(通常是假值和空值),它是:Php 使用in_数组时如何区分0和FALSE,php,Php,我有一个函数来过滤数组中不需要的值(通常是假值和空值),它是: function filter_array($arr , $filter = array('' , FALSE)){ foreach($arr as $k=>$v) { if(in_array(trim($v) , $filter)) unset($arr[$k]); } return $arr; } 问题是,它将0视为false并将它们从数组中删除。。
function filter_array($arr , $filter = array('' , FALSE)){
foreach($arr as $k=>$v)
{
if(in_array(trim($v) , $filter))
unset($arr[$k]);
}
return $arr;
}
问题是,它将0
视为false
并将它们从数组中删除。。。我怎样才能解决这个问题
一种方法是通过$filter
循环,并使用==
检查值,但我想避免另一个循环使用第三个可选参数进行严格比较
in_array(trim($v) , $filter, true)
. 第三个论点是严格的比较。