更改PHPSESSID Cookie的到期时间

时间:2011-01-01 14:24:13

标签: php cookies

我现在已经在这一天了,但似乎没有任何工作。 我想做什么:更改会话cookie PHPSESSID的到期时间,当选中特定复选框时,我该怎么做? 我试过了:

的ini_set()

session_set_cookie_params()

setcookie()函数

但没有任何作用。有人可以请帮帮我吗?

由于

1 个答案:

答案 0 :(得分:11)

要指定会话生存期,服务器端,请应用以下命令

  ini_set('session.gc_maxlifetime', 30*60); // expires in 30 minutes

或将其设置在php.ini文件中。

要设置会话cookie生存期,客户端要么保持原样(0,将在浏览器关闭时死亡),或者

  ini_set('session.cookie_lifetime', 30*60); // 30 minutes

php.ini

如果您选择使用ini_set(),请务必在调用 session_start()之前放置命令。

请注意ini_set函数设置配置选项during the script execution time only

关于复选框并具有会话生命周期的动态设置,您可以

  • 使用APC存储所有PHP进程共享的设置,该设置将持续到PHP服务器关闭
  • 在脚本开头加载的某个文件中写入一个值(昂贵)并设置值

(每个脚本必须在ini_set()之前session_start()一次