【问题标题】:Set cookie with path but no expiration date? [duplicate]设置带有路径但没有到期日期的cookie? [复制]
【发布时间】:2014-10-27 19:58:00
【问题描述】:

我想设置带有路径但没有到期日期的cookie。但是 PHP setCookie(name,value,exp-date,path) 中的语法是这样的,我想要 setCookie(name,value,path) 但 PHP 不会让我这样做。或者我想到期是 Session。怎么可能?

【问题讨论】:

  • 不是我要找的答案。我不想要无限的时间来约会。我想要会话 cookie,但路径不同。
  • 来自文档:“如果设置为 0 或省略,cookie 将在会话结束时(浏览器关闭时)过期。” - 阅读:php.net/manual/ro/function.setcookie.php

标签: php cookies setcookie


【解决方案1】:

setCookie 函数需要一个过期日期,只需将其设置为遥远的未来日期,例如十年:

时间() + (10 * 365 * 24 * 60 * 60)

如果您只想使用会话变量,请使用以下示例:

http://www.w3schools.com/php/php_sessions.asp

要让 cookie 在会话结束时结束,请使用零作为时间。

setcookie('COOKIENAME', 'COOKIEVALUE', 0, '/mypath');

【讨论】:

  • 当我写 setcookie(name,value); 时,它会将我的 Cookie 的到期日期设置为 Session,我想保留它,但通过在日期之后的语法来改变那个 Cookie 女巫的路径,我无法创建 Cookie改变exp-date的不同路径。是否可以将 exp-date 保留为 Session 并更改默认路径?
  • 不错。就这么简单。谢谢:)
【解决方案2】:

不可能无限期地保存 cookie,但你可以给它更长的时间,比如 10 年、15 年或 20 年,就像这样。

setcookie("your-Cookie-Name","your-Cookie-value",time() + (20 * 365 * 24 * 60 * 60)); //it will set cookie for 20 years

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-23
    • 1970-01-01
    • 2010-10-06
    • 2010-11-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多