2015-03-04 6 views
0

Я хочу создать многомерный массив сеансов в 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); 

это работает. но не работает для другого массива как значения.

Как я могу это сделать?

спасибо.

+0

Не могли бы вы показать нам свой код? – teo

+0

Вы впервые определили '$ _SESSION ['basket'] = array();'? И как раз тогда $ _SESSION ['basket'] [$ id] = $ array; и т. д. – marlenunez

+1

, тогда убедитесь, что '$ id' уникален, так что он не перезаписывает его – Ghost

ответ

0

Я предоставляю ответ на свой вопрос. Это может помочь некоторым другим людям, которые имеют такую ​​же проблему.

не хранит никаких объектов в вариациях $ _SESSION. Я хранил

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

Поэтому я бросил объект в строку

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

и она работает.

надеюсь, что это поможет кому-то.

+0

Пожалуйста, добавьте информацию к вашему вопросу о том, что вы используете объекты для хранения вместо массивов, отметьте свой ответ как ответ OPs. – Daniel

-1

Используйте это так:

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

Это будет работать.

+0

Определение может удалить все ключи, хранящиеся в' $ _SESSION ['basket'] 'before. Я сомневаюсь в этом решении. –

+0

, если мы определим «$ _SESSION ['basket'] = array(), то он всегда будет действовать в другом выражении. а также перезапишет предыдущую «$ _SESSION ['basket'] = array()». – akshay

+0

См. обновленный ответ. – manoj

Смежные вопросы