关于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源码之explode使用说明

当我们需要将一个数组根据某个字符或字串进行分割成数组的时候,explode用的很happy,但是你知道~explode是怎么工作的么~~ 首先可以肯定的是,explode也是会分配空间的...

PHP分页效率终结版(推荐)

这里仅展示出设计思路,具体安全问题,是否同步更新等可根据具体需求添加修改:以前人们常用的PHP分页技术,通常都需要先统计出数据库中总信息条数才能判断出总页数并对其进行分页,,也就是说,每...

php HTML无刷新提交表单

通常对于无刷新提交表单,我们都是运用ajax实现的。前段时间跟着老大了解到另一种无刷新提交表单的方法,是利用iframe框架实现的。现在整理出来分享给大家。 第一种: html页面...

PHP5.5和之前的版本empty函数的不同之处

作为我最喜欢使用的函数之一,今天也终于发现这个函数的恶魔之处。洋洋洒洒写了以下代码,本地测试一切ok,到服务器上就SB了。复制代码 代码如下:if(strlen($passwd) <...

PHP重定向与伪静态区别

什么是伪静态 伪静态是相对真静态来讲 伪静态只是把URL改成静态形式,实际上还是动态网页 伪静态有着真静态一样的SEO 什么是重定向(很常用重点学习) 将网络请求重新定一个方向,转到别的...