php – 有没有方法检查所有数组项是否为’0’?

前端之家收集整理的这篇文章主要介绍了php – 有没有方法检查所有数组项是否为’0’?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个阵列
$data = array( 'a'=>'0','b'=>'0','c'=>'0','d'=>'0' );

我想检查所有数组值是否为零.

if( all array values are '0' ) {

   echo "Got it";

} else {

  echo "No";
}

谢谢

我想你可以用 array_filter()得到一个非零的所有项目的数组;并在结果数组上使用 empty(),以确定它是否为空.

例如,使用示例数组:

$data = array( 
       'a'=>'0','d'=>'0' );

使用以下代码部分:

$tmp = array_filter($data);
var_dump($tmp);

显示一个空数组,不包含非零元素:

array(0) {
}

并使用这样的东西:

if (empty($tmp)) {
    echo "All zeros!";
}

会得到以下输出

All zeros!

另一方面,使用以下数组:

$data = array( 
    'a'=>'0','b'=>'1','d'=>'0' );

$tmp数组将包含:

array(1) {
  ["b"]=>
  string(1) "1"
}

而且,因此,不会是空的.

请注意,不将回调作为第二个参数传递给array_filter()将起作用,因为(引用):

If no callback is supplied,all entries of input equal to FALSE (see 07002) will be removed.

猜你在找的PHP相关文章