繁体   English   中英

PHP中的多维会话数组

[英]Multidimensional session array in PHP

我想在PHP中创建一个多维会话数组。

$_SESSION['basket'][$id] = $array

$array指向一个数组。

当我为新的$id运行它时,它将覆盖$_SESSION['basket']的先前条目。

表示每次count($SESSION['basket'])1

实际上,我想实现以下结构。

$_SESSION['basket'] = array($id1 => array(), $id2 => array(), .....)

编辑:

if(!isset($_SESSION['basket'])) {                           
 $_SESSION['basket'] = array();
 $_SESSION['basket'][$id] = $array;
}
else{
 $_SESSION['basket'][$id] = $array;
}

当我做

$_SESSION['basket'][$id] = implode('/',$array);

有用。 但不适用于另一个数组作为值。

我怎样才能做到这一点?

谢谢。

我正在为我的问题提供答案。 这可能会对其他遇到相同问题的人有所帮助。

不要在$ _SESSION变量中存储任何对象。 我当时在储存

$array = array( $key=>object($value),....)

因此,我将对象转换为字符串

$array = array($key => (string)$value, ...)

而且有效。

希望对别人有帮助。

像这样使用它:

$tmp = $_SESSION['basket'];
$tmp[$id] = array();
$tmp[$id] = $array;

可以的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM