1

您如何使 SESSION cookie 持续更长时间?

我在登录我的用户的文件中使用此代码:

<?
session_regenerate_id();
session_set_cookie_params(3600*24*365);
session_start();
$_SESSION['u']['id'] = xxxx;
?>

在站点的其余部分上,我仅session_start();用于开始会话。

客户端上的 cookie PHPSESSID 设置为在 365 天后过期,但如果我一天不使用该站点并回来,我将被注销。我是否必须做些其他事情才能使饼干持续更长时间?

4

1 回答 1

0

在普通 cookie 中,您可以在设置 cookie 时手动执行此操作:

setcookie($foo, $bar, time()+(3600*24*365));

但是,会话 cookie 会在您的浏览器关闭后自动删除(除非您使用的浏览器专门在运行期间保存您的会话)。老实说,如果您希望会话持续时间比会话更长,您应该使用某种数据持久性(如 MySQL)序列化所述会话。

于 2012-11-01T04:44:19.113 回答