代码点火器自动定义默认会话


codeigniter define default sessions automatically

当用户logs in时,将生成他所需的sessions...

$this->session->set_userdata($session_data_array);

但是,我如何为非登录用户执行此操作,以便我可以在每个页面efficiently中存储一些sessions

一种方法是检查是否session exists,如果没有,则在每个controllergenerate

我通常在被覆盖的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
            ));
        }
    }
}

我做了一些研究,由于我最终不希望它在我的所有页面上检查未登录的会话,我只是检查了如果不存在,然后在我所需的文件上创建它。