【问题标题】:How to check if all value in loop true value or any of it has false value如何检查循环中的所有值是否为真值或其中任何一个具有假值
【发布时间】:2018-06-22 18:55:48
【问题描述】:

如何在循环数据时检查购物车中的所有产品是否允许货到付款。

例如我在购物车中有物品

汽车

itemname |  cod |
---------|------|-------------- 
  car    |  1   |
 phone   |  0   |
  gun    |  1   |

PHP 代码

foreach($mycart as $row){
    if($row->cod){
        $allItemAllowCod = true;
    }else{
        $allItemAllowCod = false;
     }
}

我想要做的是,一旦任何记录的 cod 的值为 0,$allItemAllowCod 应该返回 false,但如果所有项目的 cod 值为 1,它将返回 true

【问题讨论】:

    标签: php foreach


    【解决方案1】:

    添加一个 break 语句,这将停止 foreach 执行

    foreach($mycart as $row){
        if($row->cod){
            $allItemAllowCod = true;
        }else{
            $allItemAllowCod = false;
            break;
        }
    }
    

    祝你好运

    【讨论】:

    • 我建议在循环之前定义$allItemAllowCod = true;,然后在循环中只有一个没有任何else 的if 语句:if (0 == $row->cod) { $allItemAllowCod = false; break; }
    • 是的,干净多了!
    • 很好用,但请确定是否所有cod 有0 或一些有1 和一些有0?
    • @PhilipJems - 是的,这是可能的,但这是另一个问题。这个答案解决了当前的问题。在您得到正确答案后,请不要移动您的问题的球门柱。而是发布一个新问题。
    • @MagnusEriksson 如果我发布另一个问题,如果我只更新我的问题,它将被否决?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多