Це розширені операції (наприклад, сортування, зворотний зв'язок) для одновимірних та двовимірних масивів у рамках Twig:
1D масив
Без сортування ключів та реверсу
{% for key, value in array_one_dimension %}
<div>{{ key }}</div>
<div>{{ value }}</div>
{% endfor %}
Сортування клавіш
{% for key, value in array_one_dimension|keys|sort %}
<div>{{ key }}</div>
<div>{{ value }}</div>
{% endfor %}
Сортування клавіш і зворотний бік
{% for key, value in array_one_dimension|keys|sort|reverse %}
<div>{{ key }}</div>
<div>{{ value }}</div>
{% endfor %}
2D масиви
Без сортування ключів та реверсу
{% for key_a, value_a in array_two_dimension %}
{% for key_b, value_b in array_two_dimension[key_a] %}
<div>{{ key_b }}</div>
<div>{{ value_b }}</div>
{% endfor %}
{% endfor %}
Сортування клавіш на зовнішньому масиві
{% for key_a, value_a in array_two_dimension|keys|sort %}
{% for key_b, value_b in array_two_dimension[key_a] %}
<div>{{ key_b }}</div>
<div>{{ value_b }}</div>
{% endfor %}
{% endfor %}
Сортування клавіш як на зовнішніх, так і на внутрішніх масивах
{% for key_a, value_a in array_two_dimension|keys|sort %}
{% for key_b, value_b in array_two_dimension[key_a]|keys|sort %}
<div>{{ key_b }}</div>
<div>{{ value_b }}</div>
{% endfor %}
{% endfor %}
Сортування клавіш на зовнішньому масиві та сортування клавіш та повернення до внутрішнього масиву
{% for key_a, value_a in array_two_dimension|keys|sort %}
{% for key_b, value_b in array_two_dimension[key_a]|keys|sort|reverse %}
<div>{{ key_b }}</div>
<div>{{ value_b }}</div>
{% endfor %}
{% endfor %}
Сортування клавіш та повернення до зовнішнього масиву та сортування клавіш у внутрішній масив
{% for key_a, value_a in array_two_dimension|keys|sort|reverse %}
{% for key_b, value_b in array_two_dimension[key_a]|keys|sort %}
<div>{{ key_b }}</div>
<div>{{ value_b }}</div>
{% endfor %}
{% endfor %}
Сортування та повернення клавіш на зовнішньому та внутрішньому масиві
{% for key_a, value_a in array_two_dimension|keys|sort|reverse %}
{% for key_b, value_b in array_two_dimension[key_a]|keys|sort|reverse %}
<div>{{ key_b }}</div>
<div>{{ value_b }}</div>
{% endfor %}
{% endfor %}
foreach
петлю.