What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
{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>