为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel5为什么设置session的lifetime时间就是没有用的

/ 猿问

Laravel5为什么设置session的lifetime时间就是没有用的

牛魔王的故事 2019-03-23 15:15:00

Laravel5为什么设置session的lifetime时间就是没有用的


查看完整描述

2 回答

?
45度呼吸

一:在php.ini 中设置 session.gc_maxlifetime = 1440 //默认时间

二:代码实现
$lifeTime = 24 * 3600; // 保存一天
session_set_cookie_params($lifeTime);
session_start();

查看完整回答
反对 回复 2019-03-27
?
函数式编程

PHP 代码为:
//Session_Start 30 minutes destroy
$lifeTime = 1800;//单位:秒
try
{
session_start();
setcookie( session_name(), session_id(), time() + $lifeTime, "/" );
}
catch ( Exception $e )
{
session_set_cookie_params( $lifeTime );
session_start();
}
$_SESSION["LOGIN"] = "OK";
相关说明:
Session 是如何来判断客户端用户的呢?它是通过 Session ID 来判断的,什么是 Session ID,就是那个 Session 文件的文件名,Session ID 是随机生成的,因此能保证唯一性和随机性,确保 Session 的安全。一般如果没有设置 Session 的生存周期,则 Session ID 存储在内存中,关闭浏览器后该 ID 自动注销,重新请求该页面后,重新注册一个 Session ID。
  如果客户端没有禁用 Cookie,则 Cookie 在启动 Session 会话的时候扮演的是存储 Session ID 和 Session 生存期的角色。Session 还提供了一个函数 session_set_cookie_params(); 来设置 Session 的生存期的,该函数必须在 session_start() 函数调用之前调用:如上面的代码所示。



查看完整回答
反对 回复 2019-03-27

添加回答

回复

举报

0/150
提交
取消
意见反馈 邀请有奖 帮助中心 APP下载
官方微信