void
HTML_Template_IT::parse (
string
$block = "__global__"
, boolean
$flag_recursion
= = false
)
定義されたブロックをパースし、すべての置換を行ったうえで、 その結果をパース済みのブロックに追加します。
string $block
-
パースするブロック。何もセットされない場合はテンプレート全体がパース対象となります。
boolean $flag_recursion
-
内部的に使用するもので、無視できます。
boolean
-
置換するプレースホルダがなかった場合に TRUE、
それ以外の場合に FALSE あるいは IT_Error を返します。
テンプレート cvsnames.tpl.htm
<html> <table> <!-- BEGIN row --> <tr> <td> {CVS_USERNAME} </td> <td> {REALNAME} </td> </tr> <!-- END row --> </table> </html>
スクリプト
<?php
require_once "HTML/Template/IT.php";
$data = array
(
"0" => array("cvs_username" => "pajoye",
"realname" => "Pierre-Alain Joye"),
"1" => array("cvs_username" => "dsp",
"realname" => "David Soria Parra")
);
$tpl = new HTML_Template_IT("./templates");
$tpl->loadTemplatefile("cvsnames.tpl.htm", true, true);
foreach($data as $name) {
$tpl->setVariable("CVS_USERNAME", $name["cvs_username"]);
$tpl->setVariable("REALNAME", $name["realname"]);
$tpl->parse("row");
}
// show() は __global__ ブロックをパースし、
// 結果を表示します
$tpl->show();
?>
エラーコード | エラーメッセージ | 原因 | 対応 |
---|---|---|---|
IT_BLOCK_NOT_FOUND |
"
Cannot find this block block
"
|
引数で指定したブロックが存在しない。 | 引数で指定した値に間違いがないか確認してください。 |
This function can not be called statically.