我一直在尝试使用Codeigniter处理会话,但每次刷新浏览器时我都会发现创建了一个新会话......这没有任何意义。我尝试删除所有会话然后我得到一个新的,有没有人看到这个错误??
这是我的代码:
$this->load->library('session');
print_r ($this->session->all_userdata());
$this->session->sess_destroy();
所以,使用sess_destroy我会删除会话,但是当我刷新网站时会有新的会话..
答案 0 :(得分:2)
编辑:
在Session.php快速达到峰值后确认
/**
* Destroy the current session
*
* @access public
* @return void
*/
function sess_destroy()
答案 1 :(得分:2)
您描述的是默认和正常行为。请参阅“会话如何工作?” CodeIgniter用户指南的Session Class章节中的部分。它说:
如果会话数据不存在(或者已过期),则会创建一个新会话并保存在cookie中。
这是使用
之前启动的Session类$this->load->library('session');
这是什么情况。
如果您担心安全问题,请不要担心。新会议不会延续以前会议的数据。
最后,如果由于某种原因你想破坏会话并有条件地启动它,请检查它是否存在:
if($this->session->userdata('username') === FALSE )
如手册中所述:
注意:如果您尝试访问的项目不存在,则该函数返回FALSE(布尔值)。