我正在开发一个处理kohana HMVC结构下的cookie的程序,我发现Kohana有三种获取/设置cookie的方法。他们是
Request::current()->cookie()
,Response->cookie()
和Cookie类(Cookie::set(), get()
)
PHP还有一个本地setcookie()
函数和$_COOKIE
来处理cookie。
任何人都可以解释他们之间的差异,以及他们应该分别使用的情况。
答案 0 :(得分:0)
Request::cookie()
之前, Request::execute()
用于设置将发送(或在初始请求的情况下已发送)的cookie以及请求的其余部分。
Request::cookie()
期间的Request::execute()
将替换$_COOKIE
。
Response::cookie()
期间 Request::execute()
将替换setcookie()
。
在Response::cookie()
用于获取服务器设置的cookie之后Request::execute()
。
Cookie帮助程序将对您的cookie进行签名,并由HTTP_Header用于设置在初始Request对象中设置为Response对象的Cookie(请参阅Response::send_headers()
中的index.php
)。
如果您正在尝试安全地编码HMVC,您可能不希望自己直接使用它。