我正在尝试添加ID相同但大小不同的第二个产品,但是我一直覆盖第一个产品。
当我发现该条件时,它会显示它实际上是正确的,但是即使它具有不同的大小,也只会代替第一个产品。
if(isset($cart[$id])&&($cart[$id]['size']==$request->productSize)) {
$cart[$id]['quantity'] += $request->productQuantity;
session()->put('cart', $cart);
return redirect()->back()->with('success', 'Product added to cart successfully!');
;}
if(isset($cart[$id])&&($cart[$id]['size']!==$request->productSize)) {
$cart = [
$id => [
"name" => $product->productName,
"price" => $product->productPrice,
"size" => $request->productSize,
"quantity" => $request->productQuantity,
"photo" => $product->productImage
]
];
session()->put('cart', $cart);
return redirect()->back()->with('success', 'Product added to cart successfully!');
;}
预期结果是结帐前,购物车中显示2个或多个具有相同ID但尺寸不同的相同产品。