首页 > 其他 > 详细

设置session的生存时间

时间:2014-04-12 11:05:26      阅读:339      评论:0      收藏:0      [点我收藏+]

1、最有效的方法 修改php.ini中 

bubuko.com,布布扣
#session的超时时间
session.gc_maxlifetime = 1440
bubuko.com,布布扣

 

 2、通过php去修改这个值

bubuko.com,布布扣
$Lifetime = 3600;
 $Seperator = (strstr(strtoupper(substr(PHP_OS, 0, 3)), "WIN")) ? "\\" : "/";
 $DirectoryPath = dirname(__FILE__) . "{$Seperator}SessionData";
 is_dir($DirectoryPath) or mkdir($DirectoryPath, 0777);
 
if (ini_get("session.use_trans_sid") == true) {
     ini_set("url_rewriter.tags", "");
     ini_set("session.use_trans_sid", false);
 
}
 
ini_set("session.gc_maxlifetime", $Lifetime);
 ini_set("session.gc_divisor", "1");
 ini_set("session.gc_probability", "1");
 ini_set("session.cookie_lifetime", "0");
 ini_set("session.save_path", $DirectoryPath);
 session_start();
 
bubuko.com,布布扣

 

3、采用增加cookie的时间,变相的增加session的时间

bubuko.com,布布扣
/**
 * 
 *下面只是设置了保存sessionid的那个时间,这样的结果是关闭浏览器后session仍可以用
 *实际并没有改变session的生存时间
 *
 */

//只会在用户第一次访问的时候设置保存sessionid的那个cookie的过期时间
$lifetime=600;
session_set_cookie_params($lifetime);#注意到放到start的前面
session_start();

//每次都设置保存sessionid的那个cookie的过期时间
$lifetime=600;
session_start();
setcookie(session_name(),session_id(),time()+$lifetime);
bubuko.com,布布扣

 

bubuko.com,布布扣
//同上,每次都会设置
$lifetime=86400;
session_set_cookie_params($lifetime);
session_start();
session_regenerate_id(true);
bubuko.com,布布扣

 

参考手册中 session_set_cookie_params 函数 comment

 

 

设置session的生存时间,布布扣,bubuko.com

设置session的生存时间

原文:http://www.cnblogs.com/siqi/p/3659702.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!