続・テンプレートエンジンの仕様

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を作成する場合の便宜を考えたもの。例えば

[% if $var1 %]OK![% else %]NG![% end if %]

というHTMLの場合、HTMLエディタでは


**[% if $var1 %]OK![% else %]NG![% end if %]**
と表示されてしまう。この場合、
OK!

[% if $var1 %]OK!

と書けば、


**OK!**
とか
**[% if $var1 %]OK!**
となって分かりやすい、かも。