关于PHP5 Session生命周期介绍

yipeiwu_com6年前PHP代码库
它是通过 Session ID 来判断的,什么是 Session ID,就是那个 Session 文件的文件名,Session ID 是随机生成的,因此能保证唯一性和随机性,确保Session 的安全。一般如果没有设置 Session 的生存周期,则 Session ID 存储在内存中,关闭浏览器后该 ID 自动注销,重新请求该页面后,重新注册一个 Session ID。

如果客户端没有禁用 Cookie,则 Cookie 在启动 Session 会话的时候扮演的是存储 Session ID 和 Session 生存期的角色。我们来手动设置 Session 的生存期:

<?php
session_start();
// 保存一天
$lifeTime = 24 * 3600;
setcookie(session_name(), session_id(), time() + $lifeTime, "/");
?>

其实PHP5 Session还提供了一个函数 session_set_cookie_params(); 来设置PHP5 Session的生存期的,该函数必须在 session_start() 函数调用之前调用:

<?php
// 保存一天
$lifeTime = 24 * 3600;
session_set_cookie_params($lifeTime);
session_start();
?>

相关文章

php安装ssh2扩展的方法【Linux平台】

本文实例讲述了php安装ssh2扩展的方法。分享给大家供大家参考,具体如下: wget http://www.libssh2.org/download/libssh2-1.4.2.t...

php实现读取超大文件的方法

通常来说在php读取大文件的时候,我们采用的方法一般是一行行来讲取,而不是一次性把文件全部写入内存中,这样会导致php程序卡死,下面就给大家介绍这样一个例子。 读取大文件最后几行数据:...

PHP入门教程之面向对象基本概念实例分析

本文实例讲述了PHP面向对象基本概念。分享给大家供大家参考,具体如下: Demo1.php <?php //怎样去创建一个类 格式:修饰符 class 类名{}...

php cli 方式 在crotab中运行解决

复制代码 代码如下: /var/www/html/bt/e/BtSys:.:/usr/share/pear:/usr/share/phpPHP Warning: require(../c...

dedecms采集中可以过滤多行代码的正则表达式

过去用dede采集,总是过滤不掉一行以上的代码,只能一行行的过滤,在网上,发现有很多和我一样的菜鸟。随着不断的使用dede采集,对正则有了更进一步的了解,现在偶用一句正则表达式,同样可以...