php模板引擎smarty变量类型

字体大小: 中小 标准 ->行高大小: 标准
php模板引擎smarty的变量有多种类型,不同类型的变量是以它的前缀符号来区分的。
如果要输出一个变量,用定界符将它括起来就可以,例如:
{$Name}
{$Contacts[row].Phone}
<body bgcolor="{#bgcolor#}">
第一种类型:从PHP分配的变量和模板内的assign函数分配的变量显示时前面需要带"$符号.(比较常见,实例可参考上述代码)
第二种类型:从配置文件读取的变量或者是smarty的变量($smarty.config),显示时由"#"括起来,代码实例:
foo.conf 配置文件
 
pageTitle = "cn-web.com演示"
bodyBgColor = "#eeeeee"
tableBorderSize = "3"
tableBgColor = "#bbbbbb"
rowBgColor ? "#cccccc"
 
index.tpl 文件(调用方式1)
 
{config_load file="foo.conf"}
<html>
<title>{#pageTitle#}</title>
<body bgcolor="{#bodyBgColor#}">
<table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
<tr bgcolor="{#rowBgColor#}">
 <td>First</td>
 <td>Last</td>
 <td>Address</td>
</tr>
</table>
</body>
</html>
 
index.tpl: (alternate syntax)调用方式2
 
{config_load file="foo.conf"}
<html>
<title>{$smarty.config.pageTitle}</title>
<body bgcolor="{$smarty.config.bodyBgColor}">
<table border="{$smarty.config.tableBorderSize}" bgcolor="{$smarty.config.tableBgColor}">
<tr bgcolor="{$smarty.config.rowBgColor}">
 <td>First</td>
 <td>Last</td>
 <td>Address</td>
</tr>
</table>
</body>
</html>
 
 
OUTPUT: (两个例子输出结果相同)
 
<html>
<title>This is mine</title>
<body bgcolor="#eeeeee">
<table border="3" bgcolor="#bbbbbb">
<tr bgcolor="#cccccc">
 <td>First</td>
 <td>Last</td>
 <td>Address</td>
</tr>
</table>
</body>
</html>
配置文件的变量只有在它们被加载的时候才用到.
 
第三种类型:保留变量
{$smarty.变量}保留变量可以被用于访问一些特殊的模板变量
如:
Request variables[页面请求变量] 
{$smarty.now}
{$smarty.const}
{$smarty.capture}
{$smarty.config}
{$smarty.section}, {$smarty.foreach}
{$smarty.template}

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/541.html