如何在PHP中计算非空数组项但不包括0.零是一个虚假值,这就是为什么当我使用array_filter时它不包含在计数中。在下面的例子中,当我回显计数时我想得到的是4,因为数组中有4个项目
$numbers = array(0,2,4,2);
echo count(array_filter($numbers));
如果它是这样的输出应该是5,空的字符串从计数中排除但是仍然包括2个零:
$numbers = array(0,2,4,2,'',0);
echo count(array_filter($numbers));
答案 0 :(得分:1)
使用array_diff()
从$numbers
删除不需要的元素。
echo count(array_diff($numbers, array(0))); // 3