我正在使用CI3,我将会话变量存储在一个控制器中并将其传递给另一个控制器并且它正常工作了几天但是突然会话变量没有设置且值没有调整到控制器,我没有改变任何东西在代码中..我不知道如何调试导致问题的问题
一个控制器
$this->session->set_userdata(array(
'value1' =>$this->input->post('value1'),
'value2' =>$this->input->post('value2'),
));
在第二个控制器中获取值
echo $this->session->userdata('value1');
该值为空
答案 0 :(得分:2)
您是否仔细检查过value1是否已发布到您的控制器并且不为空?在将var_dump抛入数组之前尝试回显一下value1的var_dump并查看值是什么。
echo var_dump($this->input->post('value1'));
编辑:
控制器2是扩展默认CI控制器,某些其他控制器,还是独立控制器?它可能是完全没有意识到会话。尝试添加
$this->ci =& get_instance();
在控制器的构造函数中,然后尝试使用
调用它echo $this->ci->session->all_userdata();