Files
smarty/docs/ja/designers/language-custom-functions/language-function-html-table.xml
2008-05-26 08:47:23 +00:00

248 lines
7.4 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 2602 Maintainer: takagi Status: ready -->
<!-- CREDITS: mat-sh,daichi,joe -->
<sect1 id="language.function.html.table">
<title>{html_table}</title>
<para>
<varname>{html_table}</varname> は、HTML の
<literal>&lt;table&gt;</literal> にデータの配列を出力する
<link linkend="language.custom.functions">カスタム関数</link> です。
</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>Yes</entry>
<entry><emphasis>n/a</emphasis></entry>
<entry>ループに用いるデータ配列</entry>
</row>
<row>
<entry>cols</entry>
<entry>mixed</entry>
<entry>No</entry>
<entry><emphasis>3</emphasis></entry>
<entry>
テーブルのカラム数。cols属性は空であるがrows属性が与えられたという場合、
colsの数は、すべての要素を表示するのに事足りるcolsが表示されるように
rowsの数と要素の数によって計算されます。
rowsとcolsの両方が空だった場合、 colsのデフォルトは 3 として計算は省かれます。
リストあるいは配列を渡すと、そのリストあるいは配列の要素数がカラム数となります。
</entry>
</row>
<row>
<entry>rows</entry>
<entry>integer</entry>
<entry>No</entry>
<entry><emphasis>empty</emphasis></entry>
<entry>
テーブルの行数。rows属性は空であるがcols属性が与えられたという場合、
rowsの数は、すべての要素を表示するのに事足りるrowsが表示されるように
colsの数と要素の数によって計算されます。
</entry>
</row>
<row>
<entry>inner</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>cols</emphasis></entry>
<entry>
ループ配列から参照される連続要素の進行方向。
<emphasis>cols</emphasis> なら要素が列方向へ、
<emphasis>rows</emphasis> なら要素が行方向へ記述されることを意味します。
</entry>
</row>
<row>
<entry>caption</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>empty</emphasis></entry>
<entry>テーブルの <literal>&lt;caption&gt;</literal>
要素に使用する文字列</entry>
</row>
<row>
<entry>table_attr</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>border="1"</emphasis></entry>
<entry><literal>&lt;table&gt;</literal> タグの属性</entry>
</row>
<row>
<entry>th_attr</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>empty</emphasis></entry>
<entry><literal>&lt;th&gt;</literal> タグの属性
(配列は循環します)</entry>
</row>
<row>
<entry>tr_attr</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>empty</emphasis></entry>
<entry><literal>&lt;tr&gt;</literal> タグの属性
(配列は循環します)</entry>
</row>
<row>
<entry>td_attr</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>empty</emphasis></entry>
<entry><literal>&lt;td&gt;</literal> タグの属性
(配列は循環します)</entry>
</row>
<row>
<entry>trailpad</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>&amp;nbsp;</emphasis></entry>
<entry>行の最後に余ったセルがあればそれらを埋めるのに用いられる値</entry>
</row>
<row>
<entry>hdir</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>right</emphasis></entry>
<entry>
各行の表示される方向。有効な値:
<emphasis>right</emphasis> (左から右へ)、
<emphasis>left</emphasis> (右から左へ)
</entry>
</row>
<row>
<entry>vdir</entry>
<entry>string</entry>
<entry>No</entry>
<entry><emphasis>down</emphasis></entry>
<entry>
各カラムの表示される方向。有効な値:
<emphasis>down</emphasis> (上から下へ)、
<emphasis>up</emphasis> (下から上へ)
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<itemizedlist>
<listitem><para>
<parameter>cols</parameter> 属性は、テーブルのカラム数を定義します。
</para></listitem>
<listitem><para>
<parameter>table_attr</parameter><parameter>tr_attr</parameter>
および <parameter>td_attr</parameter> の値は、それぞれ
<literal>&lt;table&gt;</literal><literal>&lt;tr&gt;</literal>
および <literal>&lt;td&gt;</literal> タグの属性を表します。
</para></listitem>
<listitem><para>
<parameter>tr_attr</parameter><parameter>td_attr</parameter>
が配列の場合は、循環して処理します。
</para></listitem>
<listitem><para>
<parameter>trailpad</parameter> は、テーブルの最後の行でセルが余った場合に
そこを埋める値として使用します。
</para></listitem>
</itemizedlist>
<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>PHP から割り当てられた変数の内容を、三通りの方法で出力します。
それぞれ、テンプレートの後に出力結果を続けます。
</para>
<programlisting>
<![CDATA[
{**** 例 1 ****}
{html_table loop=$data}
<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>
{**** 例 2 ****}
{html_table loop=$data cols=4 table_attr='border="0"'}
<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>
{**** 例 3 ****}
{html_table loop=$data cols="first,second,third,fourth" tr_attr=$tr}
<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>
]]>
</programlisting>
</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
-->