Codeigniter修改会话数据

Codeigniter修改会话数据,codeigniter,Codeigniter,我在会话中存储少量数据,如下所示: $session_data = array("uid" => "test user", "loged_in" => true); $this->session->set_userdata($session_data); 要修改“uid”,我尝试了 它不起作用,所以我试了一下 $this->session->set_userdata("uid","New user"); 它也不起作用。在谷歌上找不到任何有用的东西。请帮

我在会话中存储少量数据,如下所示:

$session_data = array("uid" => "test user", "loged_in" => true);

$this->session->set_userdata($session_data);
要修改“uid”,我尝试了

它不起作用,所以我试了一下

 $this->session->set_userdata("uid","New user");
它也不起作用。在谷歌上找不到任何有用的东西。请帮助我如何在会话中更改值???

除了您所有的输入错误(当然这些在编程中很重要),您可能想看看您是否只是混淆了自己,错误地输入了数组/值/键名:

请执行以下操作:

echo "<pre>";
print_r($this->session->all_userdata());
echo "</pre>";

您是否加载了会话库$此->加载->库(“会话”);这可能是一个愚蠢的问题,但问也无妨

设置加密密钥怎么样?我想你会看到一条错误消息


你的代码是正确的(除了几个打字错误)。我猜其他地方也有问题。您是否使用db存储会话详细信息?调用
$this->output->enable_profiler(TRUE)时,会话数据的输出是什么?所有的打字错误是怎么回事登录(2G)也可以是“阵列”(而不是阵列)
echo "<pre>";
print_r($this->session->all_userdata());
echo "</pre>";
Array
(
    [session_id] => 4a5a5dca22728fb0a84364eeb405b601
    [ip_address] => 127.0.0.1
    [user_agent] => Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7;
    [last_activity] => 1303142623
    [uid]        => 2
    etc...
)
$session_data = array('uid' => 'test user', 'logged_in' => TRUE);
$this->session->set_userdata($session_data);

// modify session
$this->session->set_userdata('uid', 'New user');
///set session data
$data = array('Id' => 'test Id', 'is_logged_in' => TRUE);
$this->session->set_userdata($data);

// modify session data
$this->session->set_userdata('Id', 'New test Id');