从Twig模板

时间:2016-10-27 07:18:17

标签: symfony cookies twig drupal-8

我正在尝试访问我在Drupal网站上设置的Cookie。 我在表单提交上创建了两个cookie:

  • 使用Drupal功能= user_cookie_save(['myfirstcookie' => 'myfirstdata'])
  • 使用经典的PHP函数= setcookie('mysecondcookie', 'myseconddata', time() + (86400 * 30), "/")

我的饼干已设定,没问题。 但是,我没有找到如何从我的Twig模板中获取它们(或其中之一)。 Symfony的app.request.cookies似乎不存在。

你有什么想法吗?

2 个答案:

答案 0 :(得分:27)

Twig具有全局app帮助程序上下文,您可以通过该上下文访问Cookie(以及其他内容)。试试这个:

{{ dump(app.request.cookies) }}

最终:

{{ app.request.cookies.get('MY_COOKIE_NAME') }}

请注意,cookiesParameterBagAPI)的一个实例,因此您必须通过get()来访问它。

希望这会有所帮助......

答案 1 :(得分:0)

从控制器中粘贴过去的Cookie变量并进行检查。它对我有用。 我在控制器中的代码是:

$data['cookie'] = $_COOKIE['postcode'];

邮政编码是我的cookie名称,在我的树枝庙宇中,我写了这行代码

{{  cookie  }}

并显示我的cookie值。谢谢。