一、foreach 对数组的处理
与在PHP中的foreach用法类似,同样是用来遍历数组。在实际操作中与section 功能一样,但foreach在Smarty一般用来处理一维数组。
使用格式
无键值数组
{foreach from=$name item=id}
id: {$id}<br>
{/foreach}
有键值数组
{foreach key=j item=v from=$name }
{$j}: {$v}<br>
{/foreach}
其中key是数组中的键值
实例:php文件
html文件
二、include 多功能使用
可以只用include函数引入文件,比如可以在html文件中引入另一个html文件,那么引入的文件内容就可以显示出来。
{include file="header.htm"}//引入project目录下的文件
{include file="D:\www\head.htm"}//引入本地磁盘中的文件
{include file='head.htm' title="Main Menu"}//引入一个文件,并且把该文件中的title变量的值设为Mian Menu
三、if条件语句的使用
跟php中文if语句使用差不多,只是要使用花括号标记还有加/来结束。
{if $name=='ok'}
{else}//也可以使用else if
{/if}
四、literal strip 文本的处理技巧
使用literal 数据将被当作文本处理,此时模板将忽略其内部的所有字符信息. 该特性用于显示有可能包含大括号等字符信息的 javascript 脚本。当出现花括号时,会认为是smarty的花括号,系统将报错。所以一般不加入javascript代码。
使用strip标记数据的首尾空格和回车. 就是去掉html文件中的空格和回车。这样可以保证模板容易理解且不用担心多余的空格导致问题.
查看源文件时:空格和回车都消失了。但是标签包含的内容中的空格不会被去掉。只是去掉标签之间的空格和回车。