Twig での For 文の書き方

$recordset 変数に以下の値が登録されていることを前提として Twig の For の使い方を説明します。

初めに

$recordset = 
[
    ['id'=>1, 'name'=>'yamada', 'enabled'=>true],
    ['id'=>2, 'name'=>'suzuki', 'enabled'=>false],
]

標準的なループ

{% for item in recordset %}
    // 処理を書く
{% endfor %}

ループ回数の指定

{% for i in 0..5 %}
    // 処理を書く
{% endfor %}

アルファベットで回数指定

{% for c in 'a'..'c' %}
    // 処理を書く
{% endfor %}

ループ回数 (index) を取得

1 からループした回数を取得します。0 から取得するには、index0 を指定します。

{% for item in recordset %}
    {{ loop.index }}
{% endfor %}

ループの最初と最後

{% for item in recordset %}
    % if loop.first %}
        // 最初の処理
    {% endif %}
    {% if loop.last %}
        // 最後の処理
    {% endif %}
{% endfor %}

条件指定

{% for item in recordset if recordset.enabled %}
    // 処理を書く
{% endfor %}

キーと値の両方を取得

{% for key, item in recordset %}
    // 処理を書く
{% endfor %}