一个严格的PHP Session会话超时时间设置方法


Posted in PHP onJune 10, 2014

最近某个PHP项目用到了限制登录时间的功能,比如用户登录系统60分钟后如果没有操作就自动退出,我搜索了网络收集了有以下方法可供参考。

第一种方法即设置php.ini配置文件,设置session.gc_maxlifetime和session.cookie_lifetime节点属性值,当然也可以使用ini_set函数改变当前上下文环境的属性值:

ini_set('session.gc_maxlifetime', "3600"); // 秒

ini_set("session.cookie_lifetime","3600"); // 秒

第二种方法即设置Session时间戳,比如下面的办法。

在登录成功时设置时间戳为当前时间推后1小时,$_SESSION['expiretime'] = time() + 3600;。在检查用户登录情况使用如下代码:

if(isset($_SESSION['expiretime'])) {

    if($_SESSION['expiretime'] < time()) {

        unset($_SESSION['expiretime']);

        header('Location: logout.php?TIMEOUT'); // 登出

        exit(0);

    } else {

        $_SESSION['expiretime'] = time() + 3600; // 刷新时间戳

    }

}

根据文章《https://3water.com/article/52961.htm》,我们可以结合第一种和第二种方法来最终决定会话超时时间。
PHP 相关文章推荐
PHP 判断变量类型实现代码
Oct 23 PHP
php过滤html中的其他网站链接的方法(域名白名单功能)
Apr 24 PHP
PHP实现把MySQL数据库导出为.sql文件实例(仿PHPMyadmin导出功能)
May 10 PHP
php带抄送和密件抄送的邮件发送方法
Mar 20 PHP
PHP中应该避免使用同名变量(拆分临时变量)
Apr 03 PHP
一个简单至极的PHP缓存类代码
Oct 23 PHP
php打包网站并在线压缩为zip
Feb 13 PHP
PHP生成短网址方法汇总
Jul 12 PHP
浅谈php和js中json的编码和解码
Oct 24 PHP
分享5个非常有用的Laravel Blade指令
May 30 PHP
PHP中引用类型和值类型功能与用法示例
Feb 26 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
Feb 27 PHP
解决CodeIgniter伪静态失效
Jun 09 #PHP
CI(CodeIgniter)框架介绍
Jun 09 #PHP
CI框架中集成CKEditor编辑器的教程
Jun 09 #PHP
PHP小教程之实现链表
Jun 09 #PHP
浅谈Eclipse PDT调试PHP程序
Jun 09 #PHP
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
Jun 09 #PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 #PHP
You might like
PHP 采集获取指定网址的内容
2010/01/05 PHP
drupal 代码实现URL重写
2011/05/04 PHP
PHP使用feof()函数读文件的方法
2014/11/07 PHP
PHP转盘抽奖接口实例
2015/02/09 PHP
PHP使用mysql与mysqli连接Mysql数据库用法示例
2016/07/07 PHP
PHP实现的回溯算法示例
2017/08/15 PHP
JavaScript 编程引入命名空间的方法
2007/06/29 Javascript
理解Javascript_13_执行模型详解
2010/10/20 Javascript
浅谈JavaScript编程语言的编码规范
2011/10/21 Javascript
JQuery-tableDnD 拖拽的基本使用介绍
2013/07/04 Javascript
window.location.href中url中数据量太大时的解决方法
2013/12/23 Javascript
巧用局部变量提升javascript性能
2014/02/24 Javascript
如何给ss bash 写一个 WEB 端查看流量的页面
2017/03/23 Javascript
Vue项目中添加锁屏功能实现思路
2018/06/29 Javascript
微信小程序框架wepy之动态控制类名
2018/09/14 Javascript
微信小程序云开发之使用云函数
2019/05/17 Javascript
Node.js中文件系统fs模块的使用及常用接口
2020/03/06 Javascript
[01:01:42]Secret vs Optic Supermajor 胜者组 BO3 第二场 6.4
2018/06/05 DOTA
vc6编写python扩展的方法分享
2014/01/17 Python
Python根据区号生成手机号码的方法
2015/07/08 Python
Python实现随机漫步功能
2018/07/09 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
2019/06/05 Python
Python搭建Spark分布式集群环境
2019/07/05 Python
解决python3插入mysql时内容带有引号的问题
2020/03/02 Python
Python之字典添加元素的几种方法
2020/09/30 Python
html5仿支付宝密码框的实现代码
2017/09/06 HTML / CSS
Orvis官网:自1856年以来,优质服装、飞钓装备等
2018/12/17 全球购物
俄罗斯领先的移动和数字设备在线商店:Svyaznoy.ru
2020/12/21 全球购物
获奖的大学生创业计划书
2014/01/05 职场文书
文明学生事迹材料
2014/01/29 职场文书
安全标准化实施方案
2014/02/20 职场文书
检查接待方案
2014/02/27 职场文书
北京导游词
2015/02/12 职场文书
中国汉字听写大会观后感
2015/06/02 职场文书
在校学生证明格式
2015/06/24 职场文书
table不让td文字溢出操作方法
2022/12/24 HTML / CSS