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

如何从php中的平板数组中获取折扣值

如何从php中的平板数组中获取折扣值

PHP
MMTTMM 2022-01-23 10:29:33
我正在尝试使用预定义的板作为数组来获取折扣数(值)。例如,如果总产品数量在 11 到 20 之间,那么我想返回 25 作为折扣值。这可能很简单,但我不知道该怎么做。因为简单的 foreach 循环可能不起作用。/** * The function returns the discount amount from the slabs * * @param int $products_count total number of product in cart * * @return mixed null|int returns discount value if matches else null */public function product_discounts($products_count){    $discount_slabs = [        '10' => '15',        '20' => '25',        '30' => '35',        '50' => '50',    ];    foreach ($discount_slabs as $count => $discount) {        if ($products_count <= $count) {            $this->discount = $discount;        }    }    return $this->discount;}
查看完整描述

1 回答

?
扬帆大鱼

TA贡献1799条经验 获得超9个赞

您只需要在循环中返回折扣,这样当您找到适合产品计数的最小平板时,您就可以停止查看后续值。否则所有值将返回 50%。如果您跳出循环,则用户拥有超过 50 个产品,他们将获得最后一个折扣值,这是最大的一个。像这样的东西:


public function product_discounts($products_count)

{

    $discount_slabs = [

        '10' => '15',

        '20' => '25',

        '30' => '35',

        '50' => '50',

    ];


    // set the base discount

    $this->discount = 0;


    foreach ($discount_slabs as $count => $discount) {

        if ($products_count <= $count) {

            // if less than this bracket, return the current discount

            return $this->discount;

        }

        // otherwise, increase the discount level

        $this->discount = $discount;

    }

    return $this->discount = $discount;

}


查看完整回答
反对 回复 2022-01-23
  • 1 回答
  • 0 关注
  • 125 浏览

添加回答

举报

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