我正在使用 PHP,我想使用 array_push() 在 SESSION 中存盤兩個以上的產品。但問題是,在 array_push 之后,購物車中只顯示了 2 個產品。當我添加兩個以上的產品時,它不會添加到購物車中。
這是我的代碼:
$dataArray = array();
$cartArray = array(
$code=>array(
'id' => $id,
'name' =>$name,
'price' =>$price,
'quantity' =>1)
);
if(empty($_SESSION["shopping_cart"])) {
$_SESSION["shopping_cart"] = $cartArray;
}
else {
array_push($dataArray, $_SESSION["shopping_cart"], $cartArray);
$_SESSION['shopping_cart'] = $dataArray;
}
uj5u.com熱心網友回復:
您可以像下面提到的那樣直接將值分配給陣列。
$_SESSION['shopping_cart'][] = $dataArray;
它將為“shopping_cart”創建一個二維陣列,并且每次添加 $dataArray
它將存盤在新密鑰中,因此您可以獲得包含所有專案的“shopping_cart”陣列
有關陣列的更多資訊,請參閱:- php 陣列
uj5u.com熱心網友回復:
請在下面找到解決方案:
<php
$cartArray = [
[
'id' => $id,
'name' =>$name,
'price' =>$price,
'quantity' =>1
],
[
'id' => $id,
'name' =>$name,
'price' =>$price,
'quantity' =>1
]
];
if(isset($_SESSION["shopping_cart"])){
if(empty($_SESSION["shopping_cart"])) {
$_SESSION["shopping_cart"] = $cartArray;
}
else {
array_push($_SESSION["shopping_cart"], $cartArray);
}
}
?>
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/481333.html
下一篇:Aeron中的會話恢復最佳實踐
