Smarty 関数
| foreach | 連想配列の繰り返し |
| include | 他のテンプレートファイルを読み込み |
| if,elseif,else | 条件分岐 |
| html_checkboxes | チェックボックスの生成 |
| html_image | イメージの生成 |
| html_options | オプションの生成 |
| html_radios | ラジオボタンの生成 |
| 関数はは他にも有りますが、良く使うものを集めてみました。 自作の関数を登録することも出来ます。 |
|
smarty.php
require_once "../include/define.php"; require_once SMARTY_DIR."Smarty.class.php"; /* Smartyオブジェクトの生成 */ $tpl = new Smarty; $tpl->template_dir = TEMPLATE_DIR; $tpl->compile_dir = COMPILE_DIR; $tpl->config_dir = CONFIG_DIR; $tpl->cache_dir = CACHE_DIR; $items = array( 'ikura' => 'いくら', 'tarako' => 'たらこ', 'sujiko' => 'すじこ', 'tobicko'=> 'とびっ子' ); /* 連想配列のループ */ $tpl->assign('items', $items); /* 条件分岐 */ $tpl->assign('value', true); /* チェックボックス */ $tpl->assign('checked', 'tarako'); /* セレクトオプション */ $tpl->assign('selected', 'sujiko'); /* ラジオボタン */ $tpl->assign('checked', 'tobicko'); /* テンプレートファイルの読み込みと表示 */ $tpl->display('Smarty.tpl');
Smarty.tpl
{* 連想配列のループ *} {foreach key=key item=item from=$items} {$key}: {$item}<br> {/foreach} <hr> {* 他のテンプレートファイル *} {include file="menu.tpl"} <hr> {* 条件分岐 *} {if $value} 条件演算子も使えます。 {else} 構文には注意が必要です。 スペースを空けましょう。 $value == true {/if} <hr> {* チェックボックス *} {html_checkboxes name="id" options=$items checked=$checked separator="<br>"} <hr> {* イメージ *} {html_image file="smarty_icon.gif"} <hr> {* セレクトオプション *} <select name=id> {html_options options=$items selected=$selected} </select> <hr> {* ラジオボタン *} {html_radios name="id" options=$items checked=$checked separator="<br>"}
出力結果
|
ikura:いくら tarako:たらこ sujiko:すじこ tobicko:とびっ子 他のテンプレートから 条件演算子も使えます。 いくら たらこ すじこ とびっ子 |
