/bonvhp/webapp/Smarty       [後へ]   [目次へ]   [次へ] ~ [] ~

Smarty: foreach

●ループ処理

テンプレート・ファイル内で、
配列を使ってループ処理ができます。

{foreach name=ループ名 from=配列名 key=キー item=現在の要素}
  ループ処理の本体
{/foreach}

例えば、

sample.php では、
$o_Smarty->assign("arr", array(1=>'red', 2=>'green', 4=>'blue', 7=>'white'));

sample.tpl では、
{foreach name=loop from=$arr key=key item=value}
  {$key} = {$value}<br>
{/foreach}

とすると、

1 = red
2 = green
4 = blue
7 = white

と表示されます。

foreach の中では、
特別な変数が使えます。

・iteration: 現在のループ回数
・first    : 1回目のループの時だけ true
・last     : 最後のループの時だけ true
・total    : ループの総回数。foreach を抜けた後でも使用可

{$smarty.foreach.ループ名.変数名}
で参照できます。

{$smarty.foreach.loop.total}

のように使用します。
/bonvhp/webapp/Smarty       [後へ]   [目次へ]   [次へ]