如何取消设置 laravel 会话数组

How to unset a laravel session array

您好,当数量为 1 并且用户尝试删除它时,我正在尝试删除购物车会话中的产品数组,只需取消设置即可。

这是我的代码:

public function remove($id)
{
    if (session('cart')) {
        foreach (session('cart') as $product) {
            if ($product['id'] == $id) {
                if ($product['qty'] == 1) {
                
                } else {
                    $product['qty'] = $product['qty'] - 1;
                }
            };
        }

        Session::put('cart', session('cart'));
        
        return redirect()->back();
    }
}

我尝试使用 Session::forget('cart.'$num) 但遇到了更多问题。

进行会话编辑,然后重新设置:

$cart = session('cart');
array_forget($cart, $num);
session()->put('cart', $cart);