欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 php5中关于session生存周期设置简介: 我们都知道Session变量是保存在服务器端的,那么它是如何来判断客户端用户的呢? 它是通过 Session ID 来判断的,什么是 Session ID,就是那个 Session 文件的文
欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入
php5中关于session生存周期设置简介:
我们都知道Session变量是保存在服务器端的,那么它是如何来判断客户端用户的呢?
它是通过 Session ID 来判断的,什么是 Session ID,就是那个 Session 文件的文件名,Session ID 是随机生成的,因此能保证唯一性和随机性,确保Session 的安全。一般如果没有设置 Session 的生存周期,则 Session ID 存储在内存中,关闭浏览器后该 ID 自动注销,重新请求该页面后,重新注册一个 Session ID.
如果客户端没有禁用 Cookie,则 Cookie 在启动 Session 会话的时候扮演的是存储 Session ID 和 Session 生存期的角色。我们来手动设置 Session 的生存期:
session_start();
// 保存一天
$lifeTime = 24 * 3600;
setcookie(session_name(), session_id(), time() + $lifeTime, "/");
?>
其实PHP5 Session还提供了一个函数 session_set_cookie_params(); 来设置PHP5 Session的生存期的,该函数必须在 session_start() 函数调用之前调用:
// 保存一天
$lifeTime = 24 * 3600;
session_set_cookie_params($lifeTime);
session_start();
?>