Bởi vì phiên lưu drupal với khóa, điều này có nghĩa là bạn nên làm một cái gì đó như
$_SESSION['yourkey']['xxx'] = serialize($data);
Bạn có thể thử điều này.
function lists_session($key, $value = NULL) {
global $user;
static $storage;
// If the user is anonymous, force a session start.
if(!user->uid) {
drupal_session_start();
}
if ($value) {
$storage[$key] = $value;
$_SESSION['lists'][$key] = $value; // I use 'lists' in case some other module uses 'type' in $_SESSION
}
else if (empty($storage[$key]) && isset($_SESSION['lists'][$key])) {
$storage[$key] = $_SESSION['lists'][$key];
}
return $storage[$key];
}
Vì vậy, để lưu một biến trong Phiên:
lists_session("xxx", serialize($data));
Và để lấy giá trị, chỉ cần sử dụng:
$myVar = lists_session("xxx");
và cũng như MOLOT đề cập đôi khi phiên không được gắn sao cho người dùng ẩn danh thì bạn nên drupal_session_start()
thủ công.