NAME
MobaSiF::Template::Compiler - Template compiler for MobaSiF::Template
SYNOPSIS
use MobaSiF::Template::Compiler;
MobaSiF::Template::Compiler::compile($in, $out_file);
DESCRIPTION
MobaSiF::Template::Compiler::compile($in_file, $out_file);
$in をコンパイルして $out_file にバイナリテンプレートを出力します。
$out_file を指定しないと、デバッグ出力が表示されます。
$in には、ファイル名か文字列への参照を渡すことができます。
テンプレートの書式
■ 置換コマンド
$={b|e|h|hn}:NAME$
NAME が指すパラメータ値に置換します。
以下のいずれかの変換方法を指定します。
b: 無変換
e: url encode
h: htmlspecialchars
hn: htmlspecialchars + nl2br
■ ループコマンド
$ loop (NAME) { $ 〜 $ } $
〜の部分を繰り返します。
NAME はハッシュを参照する配列への参照を指します。
■ 条件コマンド
$ if (条件部) { $ $ } elsif (条件部) { $ $ } else { $ $ } $
条件分岐を行います。ネストも可能です。
条件部についての詳細は下記を参照。
条件部の書式
NAME : NAME が "",0,NULL 以外の場合に真となります。
!NAME : NAME が "",0,NULL の場合に真となります。
NAME==VALUE : NAME==VALUE の場合に真となります。
NAME!=VALUE : NAME!=VALUE の場合に真となります。
COND1 && COND2 && ... and : and 条件がつなげられます。
COND1 || COND2 || ... or : or 条件がつなげられます。
制限:and, or を混在することはできません。
SEE ALSO
MobaSiF::Template