为了账号安全,请及时绑定邮箱和手机立即绑定

PHP foreach 数组检查库存是否大于

PHP foreach 数组检查库存是否大于

PHP
紫衣仙女 2023-09-22 14:39:48
尝试检查库存是否大于。当所有不同的商品大于 10 个库存时,我想显示一些文本“请求的数量不可用”而不是表单提交。这可能吗?问题是我使用 SESSION 从购物车中的一件商品中获得了 15 数量。库存总数为 10,如果一件商品的数量 15 大于库存 10,则显示“请求的数量不可用”,因此不要表单提交。但我将少于 10 个库存的商品的值更改为 10 个数量。显示“您的订单已下达”。$array = array('0' => array('qty' => 15), '1' => array('qty' => 5), '2' => array('qty' => 1));foreach ($array as $key => $item) {    if ($item['qty'] !== 0) {        if ($item['qty'] <= 10) {            $it = 'Your order has been successfully processed';        } else {            $it = 'The requested qty is not available';        }    } else {        $it = 'Some of products are out of stock';    }}echo $it;例如(1)一件商品数量 10两件 数量 5第三件商品数量 1= 如果可能的话,表单提交(数量少于同等库存 10),则显示“您的订单已下达”。例如(2)一件商品数量 15两件 数量 5第三件商品数量 1= 如果不提交(数量大于库存),则显示“请求的数量不可用。例如(3)一件商品 数量 9两件 数量 4第三件商品数量 0= 如果不表单提交,则显示“部分产品缺货”。
查看完整描述

2 回答

?
慕码人8056858

TA贡献1803条经验 获得超6个赞

也许这也可以帮助你:


$array1 =Array ('0' => Array('qty'=>10),'1'=>Array('qty'=>5),'2'=>Array('qty'=>1));


$array2 =Array ('0' => Array('qty'=>15),'1'=>Array('qty'=>5),'2'=>Array('qty'=>1));


$array3 =Array ('0' => Array('qty'=>9),'1'=>Array('qty'=>4),'2'=>Array('qty'=>0));


function handleBasket($items) 

{

    $quantities = array_column($items, 'qty');


    foreach($quantities as $quantity)

    {

        if($quantity >10){

            return 'The requested qty is not available';

        }

        if($quantity ===0){

            return 'Some of products are out of stock';

        }

    }

    

    return 'Your order has been successfully processed';

}


echo handleBasket($array1);

echo handleBasket($array2);

echo handleBasket($array3);

输出 :


Your order has been successfully processed

The requested qty is not available

Some of products are out of stock


查看完整回答
反对 回复 2023-09-22
?
绝地无双

TA贡献1946条经验 获得超4个赞

foreach ($array as $key => $item) {

    if($item['qty'] !== 0) {

        if($item['qty'] <= 10)

        {

            $it   =   'Your order has been successfully processed';

        }

        else

        {

            $it   =   'The requested qty is not available';

            break;

        }

    }

    else

    {

        $it   =   'Some of products are out of stock';

        break;

    }


}

echo $it;

你可以简单地使用休息;如果顺序出现问题,请停止 foreach。


就像一个想法:您也可以使用布尔值,如果一切正常则处理订单,如果没有给出特定的错误消息。取决于你接下来的步骤。


查看完整回答
反对 回复 2023-09-22
  • 2 回答
  • 0 关注
  • 60 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信