当用户logs in
时,将生成他所需的sessions
...
$this->session->set_userdata($session_data_array);
但是,我如何为非登录用户执行此操作,以便我可以在每个页面efficiently
中存储一些sessions
?
一种方法是检查是否session
exists
,如果没有,则在每个controller
中generate
?
我通常在被覆盖的MY_Controller
类中这样做:
<?php
class MY_Controller extends CI_Controller {
public function __construct()
{
parent::__construct();
if ( !$this->session->userdata('some_session_key')) // change this to one of your session data keys
{
$this->session->set_userdata(array(
// set guest session settings here
));
}
}
}
我做了一些研究,由于我最终不希望它在我的所有页面上检查未登录的会话,我只是检查了如果不存在,然后在我所需的文件上创建它。