Php Cookie在开放会话过期时是否未随请求一起发送?

Php Cookie在开放会话过期时是否未随请求一起发送?,php,cookies,yii,Php,Cookies,Yii,假设我创建了一个在创建时过期的cookie,下面的示例使用yii $data_cookie = new CHttpCookie('_MD2', $data); $data_cookie->expire = time(); Yii::app()->request->cookies['_MD2'] = $data_cookie; 现在我尝试使用以下代码获取它的值 yii::app()->request

假设我创建了一个在创建时过期的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过期时也不获取cookie值,这是真的吗 ?

注意:我在mozilla最新版本中对其进行了测试

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


将过期日期设置为“现在”(或过去)实际上是删除已存在同名cookie的常用方法。

是的,检查过期日期是一种很好的做法。特别是如果你有一个高容量的网站。但是cookie也可以删除,并且有一个过期日期。

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

过期时间与浏览器关闭事件无关