PHP setcookie 1年将无法正常工作

时间:2013-12-30 05:42:30

标签: php cookies

我正在尝试将PHP Cookie设置为从用户登录后的1年后到期,我这样做:

setcookie("myCookie",'exampleUserName',(365 * 24 * 60) ,'/');

问题是,当我在Chrome或Firefox中使用控制台查看Cookie时,它会在Chrome中显示Expires Sun, 05, 2014,在Firefox中显示Expires = Session

Google或stackoverflows Cookie等任何其他网站都会显示正确的到期日期。

我该如何设置呢?

6 个答案:

答案 0 :(得分:34)

setcookie($cookie_name, $cookie_value, strtotime("+1 year"));

答案 1 :(得分:25)

这样做......

setcookie("myCookie",'exampleUserName',time()+31556926 ,'/');// where 31556926 is total seconds for a year.

答案 2 :(得分:2)

第三个参数是未来的时间,意思是time() + time in seconds。你的365 * 24 * 60表示1971年(1970 + 1),这是过去的。过去的Cookie不会被使用 - 人们将cookie设置为过去的时间来清除cookie。 完全像Shankar。

答案 3 :(得分:2)

试试这个:

<?php
       setcookie("TestName", "Test Value", time()+3600 * 24 * 365);
?>

>> Here 'TestName' is name of cookie.
>> "Test Value" is value to store.
>> time()+3600 * 24 * 365 - will set cookie time till 1 year.

谢谢!

答案 4 :(得分:2)

尝试这个

setcookie($cookie_name, $cookie_value, time() + ( 365 * 24 * 60 * 60));

答案 5 :(得分:0)

最新答案,但是这一功能符合预期:

setcookie("cookie name", "cookie value", strtotime('+1 years', time()), '/');

设置为1年的cookie(今天的日期)

Sat, 28 Nov 2020 11:36:01 GMT