Files
smarty/docs/ru/designers/language-custom-functions/language-function-cycle.xml
2008-05-25 15:06:11 +00:00

156 lines
4.8 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="UTF-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 0 Maintainer: freespace Status: ready -->
<sect1 id="language.function.cycle">
<title>{cycle}</title>
<para>
{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.
</para>
<para>
{cycle} используется для прохода через множество значений.
С его помощью можно легко реализовать чередование двух или более цветов в
таблице или пройтись циклом по массиву.
</para>
<informaltable frame="all">
<tgroup cols="5">
<colspec colname="param" align="center" />
<colspec colname="type" align="center" />
<colspec colname="required" align="center" />
<colspec colname="default" align="center" />
<colspec colname="desc" />
<thead>
<row>
<entry>Имя атрибута</entry>
<entry>Тип</entry>
<entry>Обязателен</entry>
<entry>По умолчанию</entry>
<entry>Описание</entry>
</row>
</thead>
<tbody>
<row>
<entry>name</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>default</emphasis></entry>
<entry>Название цикла</entry>
</row>
<row>
<entry>values</entry>
<entry>mixed</entry>
<entry>Да</entry>
<entry><emphasis>N/A</emphasis></entry>
<entry>
Значения, по которым будет производиться цикл.
Либо список, разделеный запятыми (либо другим указанным разделителем),
либо массив значений.
</entry>
</row>
<row>
<entry>print</entry>
<entry>boolean</entry>
<entry>Нет</entry>
<entry><emphasis>true</emphasis></entry>
<entry>Выводить значение, или нет</entry>
</row>
<row>
<entry>advance</entry>
<entry>boolean</entry>
<entry>Нет</entry>
<entry><emphasis>true</emphasis></entry>
<entry>Переключаться или нет на следующее значение</entry>
</row>
<row>
<entry>delimiter</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>,</emphasis></entry>
<entry>Разделитель, используемый в атрибуте values.</entry>
</row>
<row>
<entry>assign</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>Имя переменной, которой будет присвоен вывод тэга</entry>
</row>
<row>
<entry>reset</entry>
<entry>boolean</entry>
<entry>Нет</entry>
<entry><emphasis>false</emphasis></entry>
<entry>Цикл будет установлен в начальное значение и не увеличен</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<para>
Можно проходить через несколько множеств значений одновременно,
указав атрибут name. Имена должны быть уникальными.
</para>
<para>
Можно не отображать данный элемент, установив атрибут print в
false. Удобно для пропуска значения, без его вывода.
</para>
<para>
Атрибут advance используется для повтора значения. Если
установлен в true, то при следующем вызове {cycle}
будет выведено то же значение.
</para>
<para>
Если указан специальный атрибут "assign", то вывод {cycle}
присваивается переменной, вместо отображения.
</para>
<example>
<title>{cycle}</title>
<programlisting>
<![CDATA[
{section name=rows loop=$data}
<tr bgcolor="{cycle values="#eeeeee,#d0d0d0"}">
<td>{$data[rows]}</td>
</tr>
{/section}
]]>
</programlisting>
<screen>
<![CDATA[
<tr bgcolor="#eeeeee">
<td>1</td>
</tr>
<tr bgcolor="#d0d0d0">
<td>2</td>
</tr>
<tr bgcolor="#eeeeee">
<td>3</td>
</tr>
]]>
</screen>
</example>
</sect1>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->