web-dev-qa-db-ja.com

TwigテンプレートからCookieを取得します

Drupal Webサイトで設定したCookieにアクセスしようとしています。フォームの送信時に2つのCookieを作成しました:

  • Drupal funtion = user_cookie_save(['myfirstcookie' => 'myfirstdata'])
  • クラシックPHP function = setcookie('mysecondcookie', 'myseconddata', time() + (86400 * 30), "/")

私のクッキーは設定されています、問題ありません。しかし、私のTwigテンプレートからそれらを取得する方法が見つかりませんでした。Symfonyのapp.request.cookiesは存在しないようです。

何か考えはありますか?

12
Dadaz

Twigには、グローバルなappヘルパーコンテキストがあり、これを介して(特に)Cookieにアクセスできます。これを試して:

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

そして最終的に:

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

cookiesParameterBag[〜#〜] api [〜#〜] )のインスタンスなので、get()呼び出し。

お役に立てれば...

32
Jovan Perovic

コントローラーからのCookie変数を渡して確認します。それは私にはうまくいきます。コントローラの私のコードは:

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

postcodeは私のCookie名で、my twig templeteに、このコード行を記述します

{{  cookie  }}

と私のクッキーの値を表示します。ありがとう。

0