将twig循环索引转换为数组

kee*_*zer 10 arrays indexing loops for-loop twig

我想用{{loop.index}}我的注释数组的键将我的字符串值显示在我的数组'nameComments'中,但{{ nameComments[{{ loop.index }}] }}显示错误

{% for com in comments %}
    <p>Comment {{ nameComments[{{ loop.index }}] }} : "{{ com['comment'] }}"</p>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

如果我尝试:

{% for com in comments %}
    <p>Comment {{ nameComments[1] }} : "{{ com['comment'] }}"</p>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

{{ loop.index }}告诉我价值:1

那么如何将循环索引实现到我的数组中呢?

Sir*_*ton 25

{% for com in comments %}
    <p>Comment {{ nameComments[ loop.index ] }} : "{{ com['comment'] }}"</p>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

只要省略大括号.这应该工作正常.Btw loop.index是1索引.如果循环通常以索引0开头的数组,则应考虑使用loop.index0

请参阅文档

  • 非常好注意`loop.index0`.当你忘记这件事时,这会让你发疯!;-) (4认同)

Abr*_*elo 8

如果数组索引不是从 1 或 0 开始,或者不遵循序列,或者它们不是整数,则迭代数组索引的实际值而不是使用loop.index 和loop.index0 会更安全。

为此,只需尝试以下操作:

{% for key,com in comments %}
    <p>Comment {{ nameComments[key] }} : "{{ com['comment'] }}"</p>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

查看文档