FORSMILE
EN
Twig2021/01/20

Twig setの使い方|変数・配列・連想配列・文字列ブロックの定義

Twigのsetで変数、配列、連想配列を定義して表示する方法と、ブロック代入の実例をまとめます。

ブログ一覧へ / Back to Blog
Quick Answer / まず結論

Twig setの最短チェック

Twigで変数を作る時は {% set name = value %} を使います。配列や文字列もsetで定義して、{{ name }} で表示できます。

Twig syntax guide

setで変数を定義する

twig
{% set pageTitle = '商品一覧' %}
{% set taxRate = 0.10 %}
<h1>{{ pageTitle }}</h1>

配列と連想配列を定義する

twig
{% set colors = ['red', 'blue', 'green'] %}
{% set user = {name: 'Sora', role: 'editor'} %}

{{ colors[0] }}
{{ user.name|e }}

複数行の内容を変数へ入れる

twig
{% set notice %}
  <strong>{{ user.name|e }}さんへ</strong>
  <span>プロフィールを確認してください。</span>
{% endset %}

<div class="notice">{{ notice }}</div>

setはテンプレート内の短い表示制御に向いています。業務ロジックや複雑なデータ加工はPHP側へ寄せると、テストしやすくなります。

  • 値のスコープを意識する
  • 利用者入力を表示する時はエスケープ設定を確認する
  • 複雑な計算をテンプレートへ詰め込まない
Related articles