hylomの日記: 続・テンプレートエンジンの仕様
genre:programming
ループ、条件分岐のあたりを再考。
・「[% foreach $var in @配列名 %]」~「[% end foreach %]」でループ。$varに@配列名の要素を次々と代入して繰り返す
・「[% if $var %]」~「[% else %]」~「[% end if %]」でif~else~型条件分岐。$varがtrueならelseまでを適用、flaseならelse以降を適用
コメント関係を追加。
・「<--$」「$-->」は無視。テンプレート実行時には除去される
・「[% #ほげほげ %]」はコメント。テンプレート実行時には除去される
最低限の組み込み関数。
・「[% include ファイル名 %]」で指定したファイルをinclude。includeされたファイルはParseされてその場所に挿入される
・「[% insert ファイル名 %]」で指定したファイルを挿入。insertでは指定したファイルはParseされない
コメント関係は、例えばHTMLエディタでTemplateを作成する場合の便宜を考えたもの。例えば
<b>[% if $var1 %]OK![% else %]NG![% end if %]</b>
というHTMLの場合、HTMLエディタでは
[% if $var1 %]OK![% else %]NG![% end if %]
と表示されてしまう。この場合、
<b><!--$ [% if $var1 %] $-->OK!<!--$ [% else %]NG![% end if %] $--></b>
や
<b>[% if $var1 %]OK!<!--$[% else %]NG![% end if %]$--></b>
と書けば、
OK!
とか
[% if $var1 %]OK!
となって分かりやすい、かも。
続・テンプレートエンジンの仕様 More ログイン