加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2020-12-13 13:21:14 所属栏目:PHP教程 来源:网络整理
导读:我有一个阵列 $data = array( 'a'='0','b'='0','c'='0','d'='0' ); 我想检查所有数组值是否为零. if( all array values are '0' ) { echo "Got it";} else { echo "No";} 谢谢 我想你可以用 array_filter() 得到一个非零的所有项目的数组;并在结果数组上使用
我有一个阵列
$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.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读