Prestashop 1.7.x 差异 cookie

Prestashop 1.7.x differences cookies

我在 Prestashop 中成功使用了 cookie,但我不清楚这种方式有什么区别

$context = Context::getContext();
$context->cookie->__set("mycookie","myvalue");

还有这个

$cookie = new Cookie('mycookie');
$cookie->setExpire(time() + 30 * 60); 
$cookie->variable_name = ......

谢谢。

Context 在 prestashop 中你可以说是全局对象;它保存主要定期使用的主要对象的详细信息;例如。购物车、客户、link 等。上下文保留以下对象的详细信息;

/** @var Cart */
public $cart;

/** @var Customer */
public $customer;

/** @var Cookie */
public $cookie;

/** @var Link */
public $link;

/** @var Country */
public $country;

/** @var Employee */
public $employee;

/** @var AdminController|FrontController */
public $controller;

/** @var string */
public $override_controller_name_for_translations;

/** @var Language */
public $language;

/** @var Currency */
public $currency;

/** @var AdminTab */
public $tab;

/** @var Shop */
public $shop;

/** @var Theme */
public $theme;

/** @var Smarty */
public $smarty;

因此在上下文中您可以看到 Cookie 对象也包括在内。

当您使用 new Cookie('mycookie'); 时,它将使用单独的 Cookie class 来创建对象。