{cycle} is used to cycle though a set of values. This makes it easy to alternate for example between two or more colors in a table, or cycle through an array of values.
{cycle} используется для прохода через множество значений. С его помощью можно легко реализовать чередование двух или более цветов в таблице или пройтись циклом по массиву.
Имя атрибута | Тип | Обязателен | По умолчанию | Описание |
---|---|---|---|---|
name | string | Нет | default | Название цикла |
values | mixed | Да | N/A | Значения, по которым будет производиться цикл. Либо список, разделеный запятыми (либо другим указанным разделителем), либо массив значений. |
boolean | Нет | true | Выводить значение, или нет | |
advance | boolean | Нет | true | Переключаться или нет на следующее значение |
delimiter | string | Нет | , | Разделитель, используемый в атрибуте values. |
assign | string | Нет | n/a | Имя переменной, которой будет присвоен вывод тэга |
reset | boolean | Нет | false | Цикл будет установлен в начальное значение и не увеличен |
Можно проходить через несколько множеств значений одновременно, указав атрибут name. Имена должны быть уникальными.
Можно не отображать данный элемент, установив атрибут print в false. Удобно для пропуска значения, без его вывода.
Атрибут advance используется для повтора значения. Если установлен в true, то при следующем вызове {cycle} будет выведено то же значение.
Если указан специальный атрибут "assign", то вывод {cycle} присваивается переменной, вместо отображения.
Example 8.5. {cycle}
{section name=rows loop=$data} <tr bgcolor="{cycle values="#eeeeee,#d0d0d0"}"> <td>{$data[rows]}</td> </tr> {/section}
<tr bgcolor="#eeeeee"> <td>1</td> </tr> <tr bgcolor="#d0d0d0"> <td>2</td> </tr> <tr bgcolor="#eeeeee"> <td>3</td> </tr>