当我的项目第一次运行时,以下函数有效:
public function index()
{
$this->session->set_userdata(array('value'=> $this->session->session_id));
$ses_id=$this->session->userdata('value');
$info['session_id']=$ses_id;
$this->load->view('index',$info);
}
现在,如果我用echo $ses_id
打印 $ses_id,那么它会显示会话 ID。但是如果我省略函数体中的第一行,函数将变为以下代码:
public function index()
{
echo $ses_id=$this->session->userdata('value');
$info['session_id']=$ses_id;
$this->load->view('index',$info);
}
然后它还显示会话 ID,尽管它尚未被获取。在我获取会话 ID 之前,它会出现什么问题?
您对会话的概念不清楚。因此,首先您需要学习并了解会话将如何工作。请查看此代码点火器会议以更好地理解。
JFI,在编码器点火器中,会话数据数组默认包含 4 个项目:
- session_id
- ip_address
- user_agent
- last_activity
一旦您将值存储在会话中并省略第一行,它肯定会显示$sess_idb/c 会话值中的值已存储在浏览器中,并且在您清除/销毁/过期会话之前不会删除。