2.4 KiB
Tag {for}
{for}
{for $counter= to=[ step=][ index=$index][ first=$first][ last=$last]} {* ...code... } {break} { ...code... } {continue} { ...code... } {forelse} { ...code... *} {/for}
Переменная $counter принимает значение и увеличивает своё значение на на каждой итерации цикла пока не достигнет или не станет больше . является необязательным аргументом. Если не указан, считается равным единице. $index имеет значение номера текущей итерации. Первая итерация имеет номер 0. $first равно TRUE, если итерация первая. $last равно TRUE, если итерация последняя.
Поля , , могут быть числами, или переменными, значение которых приводится к числовому.
Значением параметров index, first, last может быть только переменная (допускаются вложенности на подобии $a.b.c, но массив $a.b должен быть объявлен).
{break}
Тег {break}
используется для выхода из цикла до достижения последней итерации. Если в цикле встречается тег {break}, цикл завершает свою работу, и далее выполняется код, следующий сразу за блоком цикла
{continue}
Тег {continue}
используется для прерывания текущей итерации. Если в цикле встречается тег {continue}, часть цикла, следующая после тега, не выполняется, и начинается следующая итерация. Если текущая итерация была последней, цикл завершается.
{forelse}
Тег {forelse}
ограничивает код, который должен быть выполнен, если сочетание полей , и не обеспечивают ни одной итерации.