Warning Twig version 2.x is no longer maintained.
cycle
The cycle
function cycles on an array of values:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
{% set start_year = date() | date('Y') %}
{% set end_year = start_year + 5 %}
{% for year in start_year..end_year %}
{{ cycle(['odd', 'even'], loop.index0) }}
{% endfor %}
{# outputs
odd
even
odd
even
odd
even
#}
The array can contain any number of values:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
{% set fruits = ['apple', 'orange', 'citrus'] %}
{% for i in 0..10 %}
{{ cycle(fruits, i) }}
{% endfor %}
{# outputs
apple
orange
citrus
apple
orange
citrus
apple
orange
citrus
apple
orange
#}
Arguments
values
: The list of values to cycle onposition
: The cycle position