Skip to content

{cycle}

{cycle} 用于交替显示一组值。这使得在表格中交替显示两种或多种颜色,或者循环遍历值数组变得容易。

属性

属性名 必需 描述
name 循环的名称。
values 要循环遍历的值,可以是逗号分隔的列表(参见 delimiter 属性)或值数组。
print 是否打印该值(默认为 true)。
advance 是否前进到下一个值(默认为 true)。
delimiter 在 values 属性中使用的分隔符(默认为 ',')。
assign 将输出分配给模板变量的名称。
reset 将循环设置为第一个值,不进行前进(默认为 false)。
  • 您可以通过提供 name 属性在模板中循环遍历多个值集。为每个 {cycle} 提供一个唯一的 name

  • 您可以通过将 print 属性设置为 FALSE 来禁止打印当前值。这对于静默跳过一个值很有用。

  • advance 属性用于重复一个值。当设置为 FALSE 时,下一次调用 {cycle} 将打印相同的值。

  • 如果提供了 assign 属性,{cycle} 函数的输出将分配给一个模板变量,而不是输出到模板中。

示例

{section name=rows loop=$data}
    <tr class="{cycle values="odd,even"}">
       <td>{$data[rows]}</td>
    </tr>
{/section}

以上模板将输出:

<tr class="odd">
  <td>1</td>
</tr>
<tr class="even">
  <td>2</td>
</tr>
<tr class="odd">
  <td>3</td>
</tr>