テンプレートファイルを使用した HTML 出力
テンプレートファイルを使用して HTML を出力する場合は、
display メソッドを使用します。
$ramp->display(filename);
filename で指定したテンプレートファイルの内容を出力します。
sample.html
<html>
<body>
key1の値:{key1}<br />
key2の値:{key2}<br />
key3の値:{key3}
</body>
</html>
テンプレートタグはデリミタ( { と } )によって囲まれます。
基本的に、デリミタで囲まれた文字列を
Rampart にセットされた変数のキーとして判断し、
テンプレートタグ全体を対応する値に置き換えて出力します。
// たとえば、次のような連想配列をセット。
出力結果は以下の通りです。
$vals = array(
"key1" => "val1"
,"key2" => "val2"
);
$ramp->set($vals);
// 上のテンプレートファイルの内容を出力。
$ramp->display("sample.html");
key1の値:val1
key2の値:val2
key3の値:
set 系メソッドを使用したので、
特殊文字は自動的に HTML エンティティに変換されて
出力されています。
なお、上の例では key3 はセットされていないので、
{key3} の箇所には何も表示されません。
文字列として取得
display メソッドは
テンプレートファイルの内容を HTML 出力しますが、
出力を行わず、文字列として取得したい場合もあります。
その場合は、fetch メソッドを使用します。
$ramp->fetch(filename);
HTML出力を行わず、
テンプレートファイルの内容が文字列として返ってくる以外は
display メソッドと同じです。
// テンプレートファイルの内容を文字列として変数に格納。
$template = $ramp->fetch("sample.html");
// fetch の戻り値を出力すれば、display と同じ。
echo $ramp->fetch("sample.html");