php sesstion,tp5自定义处理session过期时间

默认的session过期时间其实挺麻烦,具体翻了一下手册,也特意在网上查了一些资料发现设置session时间确实是个很大的“坑”,可以算得上是一个session bug了;session充满了很多不确定的因素。

综合一下各大技术大件处理session的思维,整理了session资料,下面说明一下在tp5中对session过期时间的处理方法

session过期处理思路介绍,以登录为例:

1,设置一个全局变量为session过期时间,假设为$session_expire=3600;

2,在登录的时候,设置一个全局变量为登录时的时间(也就是session开始时间);假设为session("sesstion_start_time",time());

3,在需要判断session是否过期的地方,用当前时间减去上一步中设置的开始时间; 即time() - session("sesstion_start_time"),用它和$session_expire比较,即可得出session是否过期。

4,在需要判断session是否过期的地方,如果没有过期就需要更新一下开始时间,即:session("sesstion_start_time",time());即可实现以最后一次操作为开始时间;

session判断是否过期的示例代码:

1,在入口位置或者是全局配置文件中设置全局变量

$session_expire=3600;

2,在登录成功后的地方设置session开始时间:

session("sesstion_start_time",time())

3,在所有需要判断session是否过期的地方进行如下判断:

if (time() - session("sesstion_start_time") <= $session_expire){

session("sesstion_start_time",time());

}else{

echo "登录状态已过期,请重新登录";

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值