如何设置,获取和删除Magento中的Cookie变量

在magento中,我们可以设置,获取和删除cookie变量。
通常,Cookie是一种在远程浏览器中存储数据并因此跟踪或识别返回用户的机制

Mage_Core_Model_Cookie类包含设置,获取和删除cookie的函数。

最初,我们将尝试设置cookie。基本语法是

Mage :: getModel('core/cookie')->set($name,$value,$period,$path,$domain,$secure,$httponly);

有7个参数,其中名称和值是必需的; 其他参数是可选的,可以设置为null。我们一个一个地看。

$ name = Cookie名称

$ value = Cookie值

$ period = Cookie过期日期(默认情况下,期间设置为3600秒)

$ path = Cookies路径

$ domain = Cookies域名

$ secure = Cookies安全

$ httponly = Http仅在是的时候

您可以从以下Magento代码获取cookie到期日期,路径,域,安全,httponly。

/ **获取cookie生存时间* / $ cookieExpires = Mage :: getModel('core / cookie') - > getLifetime($ cookieName); 注意:Cookie Lifetime设置控制浏览器何时自动删除Magento cookie。默认值为3600,这意味着cookie将在浏览器中保留一小时(60分钟* 60秒),除非浏览器由于其他原因删除了cookie。

/ **获取cookie路径* / $ cookiePath = Mage :: getModel('core / cookie') - > getPath($ cookieName); 注意:Cookie路径允许您在其他目录(文件夹路径)中提供Magento cookie,而不是当前目录。如果您想在站点中的任何位置使用cookie,您应该将此值设置为单个正斜杠('/')

/ **获取Cookies域* / $ cookieDomain = Mage :: getModel('core / cookie') - > getDomain($ cookieName); 注意:Cookie域主要用于控制cookie是否在子域中可见(确保cookie在所有子域中可用)。

/ **获取Cookie安全* / $ cookieSecure = Mage :: getModel('core / cookie') - > isSecure($ cookieName);

/ **获取Cookie httponly * / $ cookieHttponly = Mage :: getModel('core / cookie') - > getHttponly($ cookieName); 注意:使用httponly,当为TRUE时,cookie只能通过HTTP协议访问。这意味着脚本语言(例如JavaScript)无法访问cookie。此设置可以有效地帮助通过XSS攻击减少身份盗用(尽管并非所有浏览器都支持)

我们现在知道如何设置cookie。让我们看看这个概念,如何以两种方式获取cookie值。

1.按名称获取cookie

2.将所有cookie作为数组

要按名称获取cookie:

检索cookie值有点容易。基本语法就足够了

Mage::getModel(‘core/cookie’)->get($name); 这里$ name是cookie中设置的值。只需在$ name中提供cookie的名称; 这样我们就可以通过名称准确地获取cookie值。

要将所有cookie作为数组:

有时我们可能需要获取所有cookie。在这种情况下,请不要在函数中传递cookie的名称。它如此简单。只需拥有代码即可。

Mage::getModel(‘core/cookie’)->get(); 您将获得以数组形式存储的所有cookie

最后,

删除/删除cookie,我们使用该功能

Mage::getModel(‘core/cookie’)->delete($name)

此外,我们还有4个参数。它们是$ path,$ domain,$ secure,$ httponly。$ name是强制性的。其他参数是可选的,可以设置为null。要了解这些参数,请参阅设置Cookie。您可以获取所有这些参数值。

以下是cookie的示例/用法

$ name ='sample1';

$ value ='tester';

//设置cookie

Mage :: getModel('core / cookie') - > set($ name,$ value);

//打印cookie值

echo Mage :: getModel('core / cookie') - > get($ name);

//打印cookie生存期或句点,默认情况下,期间设置为3600秒

echo Mage :: getModel('core / cookie') - > getLifetime($ name);

//您也可以设置不同的期间值

$ name ='sample2';

$ value ='tester1';

$ period = 7200;

Mage :: getModel('core / cookie') - > set($ name,$ value,$ period);


相关文章

0 0 投票数
文章评分
订阅评论
提醒
0 评论
内联反馈
查看所有评论