【发布时间】:2020-09-06 20:51:16
【问题描述】:
我试图仅在数组中的值仅为0 时返回。因为array_filter自动过滤0、null、empty等我需要使用自定义回调。
但是得到不是null,empty的每一个回报
数组是
[
(int) 0 => '0',
(int) 1 => '-100',
(int) 2 => '100'
]
function countBETrades($arr) {
$arrBE = array_filter($arr, function($v){
return $v !== false && !is_null($v) && ($v != '' || $v == '0');
});
return count($arrBE);
}
【问题讨论】:
-
是的,但我正在寻找要返回的值
1,因为只有一个0 -
它只会过滤
false和null值,因为它将匹配$v != ''。似乎您想用&&替换||。但是Berto99的回答肯定更贴切
标签: php arrays array-filter