1

假设我创建了一个在创建时过期的 cookie,下面的例子我使用 yii

            $data_cookie = new CHttpCookie('_MD2', $data);
            $data_cookie->expire = time();
            Yii::app()->request->cookies['_MD2'] = $data_cookie;

现在我尝试使用以下代码获取它的价值

yii::app()->request->cookies['_MD2']->value

但是当我更改它的到期日期时,我什么也没得到,我获​​得了它的价值
,所以即使浏览器没有关闭,当它到期时也没有获得 cookie 值是真的吗?
注意:我在 Mozilla 最新版本中对其进行了测试

4

3 回答 3

0

是的,检查到期日期是一个好习惯。特别是如果你有一个大容量的网站。但是 cookie 也可以在过期日期后删除。

于 2012-09-27T23:35:10.827 回答
0

如果 cookie 已过期……它已过期。它被扔掉,而不是发送到您的服务器。如果您真的想取回 cookie,请在将来设置过期时间。

于 2012-09-27T23:35:29.017 回答
0

如果您在 cookie 上设置了过期时间,它会在那个时间过期,而不是在浏览器关闭时过期。浏览器不会将过期的 cookie 发回给您,即使它是刚刚设置的。

设置现在(或过去)的过期时间实际上是删除已存在的同名 cookie 的常用方法。

于 2012-09-27T23:34:40.837 回答