PHP中普通cookie和Zend_http_cookies之间的区别

时间:2012-02-29 07:23:07

标签: php zend-framework codeigniter

我正在学习Zend框架。与CodeIgniter相比,它对我来说真的很难。我有一个普通的cookie(php)和zend_http_cookies之间的区别问题。我在我的Zend应用程序中使用普通的cookie,它有效,但我想了解Zend_http_cookies及其纯粹的概念,任何人都可以告诉我这个.. thnx提前。

3 个答案:

答案 0 :(得分:1)

Zend_Http_Cookie解释了你想知道的一切。但基本上它只是“只是”PHP的本机cookie函数的包装。如果这就是你要问的话,那不是某种新的cookie。

答案 1 :(得分:1)

Zend_Http_Cookie与普通Cookie无关。它是Zend_Http_Client的一部分,是一个表示HTTP cookie的类。

它提供了解析HTTP响应字符串,收集cookie以及轻松访问其属性的方法。它还允许检查cookie是否与特定场景匹配,IE是请求URL,到期时间,安全连接等。

Reference

答案 2 :(得分:0)

PHP cookie:

Cookie通常用于标识用户。 Cookie是服务器嵌入用户计算机的小文件。每次同一台计算机通过浏览器请求页面时,它也会发送cookie。使用PHP,您可以创建和检索cookie值。

在PHP中,您可以像这样设置cookie:

示例:

setcookie("user", "username", time()+3600);
//For getting cookie write:
echo $_COOKIE["user"];

Zend_Http_Cookie:

Zend_Http_Cookie是一个表示HTTP cookie的类。它提供了解析HTTP响应字符串,收集cookie以及轻松访问其属性的方法。

您可以使用以下方法对其进行实例化:

$cookie = new Zend_Http_Cookie('user',
                               'user demo',
                               '.example.com',
                               time() + 3600,
                               '/path');

可以使用__toString()魔术方法将cookie对象传回一个字符串。此方法将生成HTTP请求“Cookie”标头字符串,显示cookie的名称和值,并以分号(';')结束。该值将进行URL编码,如Cookie标头中所预期的那样:

示例:

// Will print out 'user=user+demo;' :

echo $cookie->__toString();

echo (string) $cookie;

echo $cookie;

为了提前,你应该阅读来自framework.zend.com的zend文档