0

我试图设置一个 cookie 30 天,但由于某种原因,它设置后显示“会话”过期。在 Firefox 和 Chrome 上验证。我无法弄清楚我做错了什么。任何帮助表示赞赏!

这是我的代码:

  $name = 'db_mc';
  $value = $mc_cid . '-' . $mc_eid;
  $time = time()+3600*24*30;
  $path = '/';
  $domain = 'www.testmage.local';

  $cookie = Mage::getSingleton('core/cookie');
  $cookie->set($name,$value,$time,$path,$domain);

更新:

我测试了 setcookie() 并且工作正常。所以我认为我必须使用它。有谁知道为什么 Magento 版本只为会话设置?

4

1 回答 1

0

Magento 的 cookie 到期日期时间始终以秒为单位,您需要以秒为单位转换您的日期或时间,然后您将相应地在 magento 中设置您的 cookie。

在 magento 中设置一个月的 Cookie:

$expire = strtotime(date("m/d/Y, H:i:s A", time() + 60 * 60 * 24 * 30));

输出:09/13/2015,上午 10:43:39(以当前日期计算)。

于 2015-08-14T05:20:09.777 回答