【www.bbyears.com--smarty模板】
Smarty 模版包含文件的语法格式如下所示: {include file=$filename variable=$value …} 其中,$filename 是要包含的文件的文件名,variable 和value 是用于替换被包含文件中关键字的变量设定。
一、简单的包含文件的例子,其中test.htm 是模版文件,inc.html 是被包含的一个静态HTML模板文件。
代码如下$smarty = new Smarty;
$smarty->display("test.html");$smarty = new Smarty;
$smarty->display("test.html");test.html文件的HTML 代码如下所示:
{include file="inc.html"}
{include file="inc.html"}
运行就可以看到,被包含的文件内容被显示出来了。
当然这个文件名也可以用变量来代替,比如像下面这样
代码如下
$smarty = new Smarty;
$inc_name = "inc.html";
$smarty->assign("inc_name",$inc_name); //替换变量
$smarty->display("test.html");$smarty = new Smarty;
$inc_name = "inc.html";
$smarty->assign("inc_name",$inc_name); //替换变量
$smarty->display("test.html");运行结果与前面相同。
二、如果被包含的文件是模版,则需要使用调用该模版文件的模版来指定其中的变量。将前面的inc.htm改写如下:
代码如下 $smarty = new Smarty;
$inc_name = "inc.html";
$inca = "我是被包含文件里面的变量";
$smarty->assign("inc_name",$inc_name); //替换变量
$smarty->assign("inca",$inca); //替换被包含文件里面的变量
$smarty->display("test.html");$smarty = new Smarty;
$inc_name = "inc.html";
$inca = "我是被包含文件里面的变量";
$smarty->assign("inc_name",$inc_name); //替换变量
$smarty->assign("inca",$inca); //替换被包含文件里面的变量
$smarty->display("test.html");
test.html模版文件如下所示:
代码如下
{include file=$inc_name inca=$inca}
{include file=$inc_name inca=$inca}
inc.html被包含文件代码:
{$inca}{$inca}运行之后,你可以看到被包含文件的变量也被替换了,非常方便。