嫩枝

灵活、快速、安全
为PHP模板引擎

Syob娱乐下载mfony的产品
您正在阅读的文档树枝2. x。欧宝官网下载app切换到树枝的文档欧宝官网下载app1.倍3.倍

问题和反馈

许可证

嫩枝欧宝官网下载app新BSD许可下吗许可证

遍历每一项在一个序列。例如,显示用户列表中提供的一个变量用户:

1 2 3 4 5 6
<h1>成员< /h1><ul>{%用户在用户%}<>{{用户。用户名| e}}< />{%endfor%}< /ul>

请注意

一个序列可以是一个数组或对象实现可否认的接口。

如果你需要遍历序列的数字,您可以使用. .接线员:

1 2 3
{%我在0 . .10%}*{{我}}{%endfor%}

上面的代码片段将打印所有的数字从0到10。

它也可以有用的信:

1 2 3
{%字母“a”。' z ' %}*{{信}}{%endfor%}

. .操作员可以在双方任何表达式:

1 2 3
{%字母“a”|. . |“z”%}*{{信}}{%endfor%}

如果你需要一个不同于1步,您可以使用范围函数来代替。

“循环”变量

里面的循环块可以访问一些特殊的变量:

变量 描述
loop.index 当前迭代的循环。(1索引)
loop.index0 当前迭代的循环。(0索引)
loop.revindex 结束循环的迭代次数(1索引)
loop.revindex0 结束循环的迭代次数(0索引)
loop.first 如果第一次迭代
loop.last 如果最后一次迭代
loop.length 序列中的物品的数量
loop.parent 父上下文
1 2 3
{%用户在用户%}{{循环。指数}}- - - - - -{{用户。用户名}}{%endfor%}

请注意

loop.length,loop.revindex,loop.revindex0,loop.last变量只能在PHP数组或对象实现的可数名词接口。他们也没有当循环条件。

添加一个条件

提示

2.10的树枝,使用过滤器滤波器相反,或一个如果内部条件身体(如果你的条件取决于一个变量更新内部的循环,你没有使用循环变量)。

不像在PHP中,它是不可能的打破继续在一个循环中。您可以过滤序列迭代期间你可以跳过。下面的例子跳过所有非活跃用户:

1 2 3 4 5
<ul>{%用户在用户如果用户。活跃的%}<>{{用户。用户名| e}}< />{%endfor%}< /ul>

优点是特别循环变量将计数不正确从而不包括用户迭代结束。请记住,属性等loop.last不会被定义在使用循环条件。

请注意

使用循环在条件变量是不可取的,因为它可能不会做你期望它。例如,添加一个条件loop.index>4< /code>不会工作条件为真时的指数只是增加(所以条件永远不会匹配)。

其他的条款

如果没有迭代发生因为序列是空的,你可以呈现一个替换块使用其他的:

1 2 3 4 5 6 7
<ul>{%用户在用户%}<>{{用户。用户名| e}}< />{%其他的%}<><新兴市场>没有找到用户< /新兴市场>< />{%endfor%}< /ul>

遍历键

默认情况下,一个循环遍历序列的值。你可以重复键使用过滤器:

1 2 3 4 5 6
<h1>成员< /h1><ul>{%关键用户|%}<>{{关键}}< />{%endfor%}< /ul>

遍历键和值

您还可以访问这两个键和值:

1 2 3 4 5 6
<h1>成员< /h1><ul>{%键,用户在用户%}<>{{关键}}:{{用户。用户名| e}}< />{%endfor%}< /ul>

遍历一个子集

您可能想要遍历的一个子集的价值观。这可以通过使用过滤器:

1 2 3 4 5 6
<h1>前十位成员< /h1><ul>{%用户在用户|(0,10)%}<>{{用户。用户名| e}}< />{%endfor%}< /ul>
网站由ob娱乐下载和树枝,部署在
的树枝标志©2010 - 2023吗ob娱乐下载