区分codeigniter中的会话超时

时间:2017-10-31 03:48:02

标签: php codeigniter-3

是否可以让两个用户数据具有不同的超时/到期时间?假设第一个数据“param_1”在1天内到期,“param_2”在一个月内到期。如何使用CI会话库执行此操作。可能是这样的东西

$this->session->set_userdata('param_1', 86400);  // seconds in a day
$this->session->set_userdata('param_2', 2592000); // seconds in a month

2 个答案:

答案 0 :(得分:7)

这可以通过"Tempdata"

实现
$this->session->tempdata($key, $value, $validForTime);

然而,单个会话的持续时间不应超过几个小时。如果你想让一些变量持续的时间比这长,那么会话绝对是错误的工具。

答案 1 :(得分:5)

只有在客户端上的cookie设置与具有较长过期日期的正常域上的cookie并验证而不是会话数据时,才能执行此操作。更实际的是,在页面上使用ajax .get来验证两个cookie而不启动会话的特定URL(因为会话已经过期)。