如何在PHP中向$ _SESSION数组添加新元素

时间:2013-06-01 06:37:25

标签: php arrays session shopping-cart

我正在建立一个购物车,在我的任务中,我必须打印出客户购买的物品。我试图将项目存储在数组$_SESSION['items']中,但没有成功。我试过这个:

$_SESSION['items'][] = $item;

但它不起作用。

请提出一些建议?

5 个答案:

答案 0 :(得分:1)

您使用session_start()了吗?在使用session_start()之前,您需要声明$_SESSION以便在会话变量中保存值。

此外,您正在使用会话数组,因此请使用print_r($_SESSION['items'])查看其输出内容,以便访问指定索引所需的数组值,例如

echo $_SESSION['items'][0]

答案 1 :(得分:1)

使用session_start();来声明会话。 并使用$_SESSION['items'][] = $item;

应该工作..

答案 2 :(得分:1)

要使用会话变量,您必须使用session_start();启动会话 要添加元素,请尝试$_SESSION['items'][]=$items;并打印会话变量try print_r($_SESSION['items'][]);

foreach ($_SESSION['items'][] as $item)
{
       echo $item;
}

答案 3 :(得分:0)

$_SESSION['req_id_in_sess'] = array();

$_SESSION['req_id_in_sess'] = $req_id; //$req_id is array 



 foreach($_SESSION["req_id_in_sess"] as $key => $val)
    { 

        echo $val,"<br/>";
    }

//for single output 

echo  $_SESSION["req_id_in_sess"][0];

答案 4 :(得分:0)

就我而言,我正在扩充一些现有的基础$_SESSION变量。

例如,我最初只是设置:

$_SESSION['amount'] = 4300

然后我尝试添加一个显示'子变量':

$_SESSION['amount']['Display'] = $4,300.00.

但我发现第二次操作覆盖了部分基础变量。

解决方法是明确做事:

$_SESSION['amount']['Amount'] = 4300;
$_SESSION['amount']['Display'] = $4,300.00