1

我已经坚持了一段时间了。我是 twig 的新手,我正在尝试迭代代码,直到我的变量变为零。我试过这个:

{% set total = 5%}
      {% set i=1 %}
        {% for total %}
          <a href="#" class="page">{{i}}</a>
          {%set i=i+1%}
          {% set total = total -1%}
        {% endfor %}

还有这个

   {% set i=1 %}
    {% for total > 1%}
      <a href="#" class="page">{{i}}</a>
      {%set i=i+1%}
      {% set total = total - 1%}
    {% endfor %}

但没有一个工作..我做错了什么?

4

1 回答 1

1

Twigfor更类似于 PHP 的foreach(它们用于迭代可遍历的对象)。为了实现您所描述的,您将执行以下操作:

{% set nums = range(1, 5) %}
{% for num in nums|reverse %}
    <a href="#" class="page">{{ num }}</a>
{% endfor %}

在实践中,您可以nums从控制器逻辑中进行设置。另请注意 Twig手册

与 PHP 不同,它不可能在循环中中断或继续。

但是,您可以使用 跳过元素if。手动示例:

{% for user in users if user.active %}
于 2013-10-17T14:36:24.000 回答