致命错误:[]运算符不支持字符串ERROR购物车

时间:2014-10-10 05:49:28

标签: php arrays cart

我尝试使用会话通过表单中的用户输入将商品存储在购物车中。这是我将商品存储在购物车中的代码。

//Create cart if it doesn't already exist
if (!isset($_SESSION['Cart']))
{ 
$_SESSION['Cart'] = array(); 
}
//Add an item only if required movie info needed
if(isset($_POST['Cinema']) && isset($_POST['Day']) && isset($_POST['Time']) &&        isset($_POST['Quantity']) && isset($_POST['Price']))
{

$ITEM = array(

'Cinema' => $_POST['Cinema'], 
'Day' => $_POST['Day'], 
'Time' => $_POST['Time'],
'Quantity' => $_POST['Quantity'],
'Price' => $_POST['Price']
  );

 //Add this item to the cart
 $_SESSION['Cart'][] =  $ITEM;
}

但是,我一直收到这个错误:

 Fatal error: [] operator not supported for strings in Line 31.

Lines 31 is :  $_SESSION['Cart'][] =  $ITEM;

我的语法错了吗?

1 个答案:

答案 0 :(得分:1)

截至目前,$_SESSION['Cart']是一个字符串,而不是一个数组 - 并且您不能像推送到数组那样推送到字符串。

您需要使用session_unset()清除会话,然后将$_SESSION['Cart']重置为数组。