{cycle} - PHPプロ!マニュアル

Smartyマニュアル

- {cycle}

{cycle}

{cycle} は、値の設定に従って循環します。 テーブル内のセルの色を交互に2色もしくはそれ以上の色に変更したり、 配列の値を循環するような事が簡単に行えます。

属性名 必須 デフォルト 概要
name string No default サイクルの名前
values mixed Yes N/A カンマを境界としたリスト (delimiter属性を参照) または値の配列のどちらかによって指定する、循環される値
print boolean No TRUE 値を表示するかどうか
advance boolean No TRUE 次の値に進むかどうか
delimiter string No , value 属性で使用するためのデリミタ
assign string No n/a 出力が割り当てられるテンプレート変数
reset boolean No FALSE 次の値に進まずに、最初の値をセットする。
  • name 属性を渡す事によって、テンプレート内で 1つ以上の値のセットを通して {cycle} を行えます。 各 {cycle} にはユニークな name を与えてください。

  • print 属性に FALSE をセットする事で、 強制的に現在の値を表示しない事が可能です。これは、 こっそり値をスキップするのに役に立つでしょう。

  • advance 属性は値を繰り返すために使われます。 FALSE をセットした時に次の {cycle} が呼ばれると、 同じ値を表示します。

  • assign 属性を指定した場合は、 {cycle} 関数の出力は テンプレートに出力される代わりにテンプレート変数に割り当てられます。

例 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>


Pick Up Q&A

Q
include されたファイルの変数
 このエントリーをはてなブックマークに追加 
A
出来ます。include(require)は、その部分に読み込むファイルの内容を展開したのと同義です。エディタでファイル読み込み(あるいはコピペ)した状態と同じだと考えていいです。 #defineや変数定義だけの共通フ...

>>続きを読む

shimix様、いつもわかりやすい説明をありがとうございます。 「includeはエディタでコピペした状態と同じ」 この表現、私も授業で使わせていただきたいと思います。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)