$product is an object. You cannot use it as an array key
$cart[$product]
//maybe you meant to do this?
$cart[$product->id]
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
How to add to cart? When I want add to cart I see this error
public function addToCart(Product $product)
{
$cart = session()->get('cart', []);
if (Cart::has($product)) {
if(Cart::count($product) < $product->inventory)
Cart::update($product, 1);
} else {
if(isset($cart[$product])) {
$cart[$product]['quantity']++;
} else {
$cart[$product] = [
"title" => $product->title,
"quantity" => 1,
"image" => $product->image,
"price" => $product->price,
];
Cart::put(
[
'quantity' => 1,
],
$product
);
}
}
session()->put('cart', $cart);
return redirect()->back()->with('success', 'Product added to cart successfully!');
}
Please or to participate in this conversation.