codeigniter 会话在获取之前存在
codeigniter session exists before taken
虽然我的项目 运行 第一次使用以下功能:
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 之前出现的问题可能是什么?
您对session的概念不清楚。所以首先你需要研究和理解会话是如何工作的。请检查此 Codeigniter Session 以便更好地理解。
JFI,在codeigniter中会话数据数组默认包括4项:
- session_id
- ip_address
- user_agent
- last_activity
一旦您将值存储在会话中并省略第一行,它肯定会在 $sess_id b/c 中显示值已存储在浏览器中,在您 clear/destroy/expire 会话之前不会删除。
虽然我的项目 运行 第一次使用以下功能:
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 之前出现的问题可能是什么?
您对session的概念不清楚。所以首先你需要研究和理解会话是如何工作的。请检查此 Codeigniter Session 以便更好地理解。
JFI,在codeigniter中会话数据数组默认包括4项:
- session_id
- ip_address
- user_agent
- last_activity
一旦您将值存储在会话中并省略第一行,它肯定会在 $sess_id b/c 中显示值已存储在浏览器中,在您 clear/destroy/expire 会话之前不会删除。