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

233 lines
8.3 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.html.table">
<title>{html_table}</title>
<para>
{html_table} является
<link linkend="language.custom.functions">пользовательской функцией</link>,
которая распечатывает массив данных в HTML-тэг table.
Атрибут <emphasis>cols</emphasis> указывает, сколько в таблице будет колонок.
Атрибуты <emphasis>table_attr</emphasis>, <emphasis>tr_attr</emphasis> и
<emphasis>td_attr</emphasis> определяют атрибуты соответствующих элементов
таблицы - тэгов table, tr и td. Если параметры <emphasis>tr_attr</emphasis>
или <emphasis>td_attr</emphasis> являются массивами, их значения будут
использоваться циклически. <emphasis>trailpad</emphasis> - это значение,
помещаемое в пустые ячейки последней строки, если такие будут.
</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>loop</entry>
<entry>array</entry>
<entry>Да</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>массив данных для обработки</entry>
</row>
<row>
<entry>cols</entry>
<entry>mixed</entry>
<entry>Нет</entry>
<entry><emphasis>3</emphasis></entry>
<entry>
количество колонок в таблице. Если этот атрибут не указан, но указан
атрибут rows, то количество колонок автоматически вычисляется исходя
из количества строк и количества элементов для отображения, чтобы как
раз уместить все элементы. Если оба параметра (и rows, и cols) опущены,
cols принимает значение по умолчанию, равное 3.
Если параметр является списком или массивом, кол-во колонок рассчитывается
исходя из кол-ва элементов в списке или массиве.
</entry>
</row>
<row>
<entry>rows</entry>
<entry>integer</entry>
<entry>Нет</entry>
<entry><emphasis>empty</emphasis></entry>
<entry>
количество строк в таблице. Если этот атрибут не указан, но указан
атрибут cols, то количество строк автоматически вычисляется исходя
из кооичества колонок и количества элементов для отображения, чтобы как
раз уместить все элементы.
</entry>
</row>
<row>
<entry>inner</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>cols</emphasis></entry>
<entry>
направление заполнения элементов таблицы из массива.
<emphasis>cols</emphasis> означает заполнение элементов колонки за колонкой.
<emphasis>rows</emphasis> означает заполнение элементов строка за строкой.
</entry>
</row>
<row>
<entry>caption</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>пусто</emphasis></entry>
<entry>
текст, используемый в качестве заголовка таблицы.
</entry>
</row>
<row>
<entry>table_attr</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>border="1"</emphasis></entry>
<entry>атрибуты для тэга table</entry>
</row>
<row>
<entry>th_attr</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>пусто</emphasis></entry>
<entry>атрибуты для тэга th (значения массива отображаются циклично)</entry>
</row>
<row>
<entry>tr_attr</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>пусто</emphasis></entry>
<entry>атрибуты для тэга tr (значения массива отображаются циклично)</entry>
</row>
<row>
<entry>td_attr</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>пусто</emphasis></entry>
<entry>атрибуты для тэга td (значения массива отображаются циклично)</entry>
</row>
<row>
<entry>trailpad</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>&amp;nbsp;</emphasis></entry>
<entry>значение для заполнения пустых ячеек последней строки (если такие есть)</entry>
</row>
<row>
<entry>hdir</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>right</emphasis></entry>
<entry>
направления заполнения каждой строки. доступные значения:
<emphasis>right</emphasis> (слева-направо)
и
<emphasis>left</emphasis> (справа-налево)
</entry>
</row>
<row>
<entry>vdir</entry>
<entry>string</entry>
<entry>Нет</entry>
<entry><emphasis>down</emphasis></entry>
<entry>
направление заполнения каждой колонки. доступные значения:
<emphasis>down</emphasis> (сверху-вниз)
и
<emphasis>up</emphasis> (снизу-вверх)
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<example>
<title>{html_table}</title>
<programlisting role="php">
<![CDATA[
<?php
$smarty->assign('data',array(1,2,3,4,5,6,7,8,9));
$smarty->assign('tr',array('bgcolor="#eeeeee"','bgcolor="#dddddd"'));
$smarty->display('index.tpl');
?>
]]>
</programlisting>
<para>
Шаблон:
</para>
<programlisting>
<![CDATA[
{html_table loop=$data}
{html_table loop=$data cols=4 table_attr='border="0"'}
{html_table loop=$data cols="first,second,third,fourth" tr_attr=$tr}
]]>
</programlisting>
<para>
Результат выполнения данного примера:
</para>
<screen>
<![CDATA[
<table border="1">
<tbody>
<tr><td>1</td><td>2</td><td>3</td></tr>
<tr><td>4</td><td>5</td><td>6</td></tr>
<tr><td>7</td><td>8</td><td>9</td></tr>
</tbody>
</table>
<table border="0">
<tbody>
<tr><td>1</td><td>2</td><td>3</td><td>4</td></tr>
<tr><td>5</td><td>6</td><td>7</td><td>8</td></tr>
<tr><td>9</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
</tbody>
</table>
<table border="1">
<thead>
<tr>
<th>first</th><th>second</th><th>third</th><th>fourth</th>
</tr>
</thead>
<tbody>
<tr bgcolor="#eeeeee"><td>1</td><td>2</td><td>3</td><td>4</td></tr>
<tr bgcolor="#dddddd"><td>5</td><td>6</td><td>7</td><td>8</td></tr>
<tr bgcolor="#eeeeee"><td>9</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
</tbody>
</table>
]]>
</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
-->