Home > Backend Development > PHP Tutorial > 为什么我设置ini_set("session.gc_maxlifetime",1);无效了?

为什么我设置ini_set("session.gc_maxlifetime",1);无效了?

WBOY
Release: 2016-06-20 12:38:52
Original
1402 people have browsed it

<?	ini_set("session.gc_maxlifetime",1);	session_start();	$_SESSION["name"] = "darkblue";?>
Copy after login

我设置了ini_set("session.gc_maxlifetime",1); session 有效期是1分钟.
我一分钟后再访问同文件夹下的test.php 怎么还能获取到$_SESSION["name"] 的 值啊?应该是空值吧?
过了2小时还是可以获取到.
还需要设置什么吗?

<?	session_start();	echo $_SESSION["name"];?>
Copy after login

这是我test.php的代码


回复讨论(解决方案)

我也是新手
不介意的话给个小建议,要不试试...


    ini_set("session.gc_maxlifetime",1);

放到session_start(); 的后面

我也是新手
不介意的话给个小建议,要不试试...


    ini_set("session.gc_maxlifetime",1);

放到session_start(); 的后面


你之前做过吗


我也是新手
不介意的话给个小建议,要不试试...


    ini_set("session.gc_maxlifetime",1);

放到session_start(); 的后面


你之前做过吗
我之前试过
这样的确令时间有效

但在其他代码也修改过,不知道这是否是最直接的原因

sessions时间

修改了时间还不够的,php有gc机制,也就是垃圾回收机制,默认只有1/100或者1/1000的概率才会在session文件过期时间之后把文件删除,你可以修改session.gc_divisor = 1,session.gc_probability = 1,这样就是session文件过期之后,在session初始化动作的触发下,session文件有100%的概率被删除

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template