PHP Sessions 过期时间 - 在特定的分钟/小时/天数内保持 session 有效

标签 php session cookies timeout

我有一个为购物车创建 session 的网站。

$_SESSION['cart']=array();

似乎服务器在 X 时间不活动后自动终止 session ,我假设这是在 php.ini 中设置的(但我的主机不授予我访问权限,他们只是让我告诉他们更改,所以我不能玩一玩!:()。

是否有更好的方法让 session 保持事件状态,例如 2 天或特定的分钟数/小时数?

最佳答案

调用session_set_cookie_params()在你打电话之前 session_start()在你的脚本中:

$session_lifetime = 3600 * 24 * 2; // 2 days
session_set_cookie_params ($session_lifetime);
session_start();
// ...

来自documentation :

session_set_cookie_params()
Set cookie parameters defined in the php.ini file. The effect of this function only lasts for the duration of the script. Thus, you need to call session_set_cookie_params() for every request and before session_start() is called.

或者,您可以将 php.ini 文件的 session.cookie_lifetime 指令更新为 2 天(以秒为单位)。

关于PHP Sessions 过期时间 - 在特定的分钟/小时/天数内保持 session 有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16108621/

相关文章:

php - 如何知道在 ON DUPLICATE KEY UPDATE 查询之后是否更新或插入了一行

php - 如果自动加载,则阻止 codeigniter session 库发送 set-cookie header 参数

c# - Nitpicky ReSharper 行为,对 Request.Cookies 的空引用

iphone - UIWebView 的 cookie 存储在哪里?

ruby - 我如何在 capybara 中使用我自己的 cookie?

php - preg_replace 一个没有跟随特定字符的字符

php - Laravel 通过另一个 URL 上传图像并将其存储在数据库中

php - 碳日期找出今天是星期四还是回去

c# - .Net session 范围变量?

python - 如何访问 CKAN 扩展中的 session 对象?