我在会话中存储的数据很少,如下所示:
$session_data = array("uid" => "test user", "loged_in" => true);
$this->session->set_userdata($session_data);
要修改我试过的“uid”
$uid = array("uid" => "New user");
$this->session->set_userdata($uid);
没用,所以我试过
$this->session->set_userdata("uid","New user");
它也没用。无法在谷歌上找到任何有用的东西。请帮助我如何更改会话中的值??
答案 0 :(得分:9)
您是否加载了会话库? $这 - >负载>库( '会话');这可能是一个愚蠢的问题,但问问题并没有什么坏处。
设置加密密钥怎么样?我想你会看到https://www.codeigniter.com/user_guide/libraries/encryption.html
的错误消息$session_data = array('uid' => 'test user', 'logged_in' => TRUE);
$this->session->set_userdata($session_data);
// modify session
$this->session->set_userdata('uid', 'New user');
答案 1 :(得分:2)
除了你的所有拼写错误(当然是编程中的那些问题),你可能想看看你是否只是在混淆自己并错误地错误地输入数组/值/键名:
执行以下操作:
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...
)
答案 2 :(得分:1)
///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');