راکت

حلقه foreach در لاراول

بدون پاسخ

درود بنده برای کد تخفیف می خوام وقتی از ولیدیشن کد تخفیف گذشت داخل سشن اگر اون محصول کد تخفیف داشت داخل پیوت آن یعنی discount اون درصد اعمال بشه .
اما هر کاری می کنم فقط فقط رو یکی اعمال میشه مثلا اگر 4 تا محصول داخل سبد خرید باشه و 3 تاش شامل کد تخفیف شود فقط رو یکی اعمال میشود!! نمی دونم مشکل چیه این discount controller

  $products = Product::find(array_keys($this->storage->all()));
        foreach ($products as $product) {
            if (!is_null($product->discounts)) {
                $request->session()->put('discount', $discount);
            } else {
                $request->session()->put('discount', 0);
            }
        }

$products کل محصول های سبد خرید هست که داخل سشن ذخیره شده
اینم کلاس basket که داخل ویو سبد خرید فراخوانی میشود.

 public function all()
    {
        $products = Product::find(array_keys($this->storage->all()));
        foreach ($products as $product)
            $product->qty = $this->get($product)['qty'];
//اگر تخفیف ثبت شده بود برای هر محصول نمایش بده
        if (Session::has('discount')) {
            $product->discount = Session::get('discount');
        } else {
            $product->discount = 0;
        }
        return $products;
    }
ثبت پرسش جدید

پاسخ‌ها

0

هنوز پاسخی ثبت نشده

اولین نفری باشید که به این پرسش کمک می‌کند و مسیر حل مشکل را باز می‌کند.

اولین پاسخ را بنویسید

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام