我正在尝试将PHP Cookie设置为从用户登录后的1年后到期,我这样做:
setcookie("myCookie",'exampleUserName',(365 * 24 * 60) ,'/');
问题是,当我在Chrome或Firefox中使用控制台查看Cookie时,它会在Chrome中显示Expires Sun, 05, 2014
,在Firefox中显示Expires = Session
。
Google或stackoverflows Cookie等任何其他网站都会显示正确的到期日期。
我该如何设置呢?
答案 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