什么是内置函数, 内置函数是模板引擎的一部分, 用于实现模板中一些流程控制等结构的语句。 内置函数和自定义函数的区别在: 内置函数不能修改, 也不能创建和内置函数同名的自定义函数。
{php}...{/php} 可以在模板里使用PHP代码 {include file="footer.tpl"} 可以引入一个tpl文件 {include_php file='test.php'} 引入php文件,并执行 {config_load file="colors.conf"} 可以引入配置文件变量 {literal}...{/literal} 可以内嵌CSS和JS代码 {if}...{elseif}...{else}...{/if} 条件判断语句
Smarty 中的 if 语句和 php 中的 if 语句一样灵活易用,并增加了几个特性以适宜模板引擎. if 必须于 /if 成对出现. 可以使用 else 和 elseif 子句. 可以使用以下条件修饰词:eq、ne、neq、gt、lt、lte、le、gte、ge、is even、is odd、is not even、is not odd、not、mod、div by、even by、odd by、==、!=、>、<、<=、>=. 使用这些修饰词时必须和变量或常量用空格格开.
PS:if语句中条件修饰符的含义如下:
equal : 相等、 not equal: 不等于、 greater than: 大于、 less than: 小于、 less than or equal:小于等于、great than or equal:大于等于、is even:是偶数、is odd:是奇数、is not even: 不是偶数、is not odd:不是奇数、not:非、mod:取余、div by:被。 。 。除
{strip}...{/strip} 将代码中的空格压缩掉 {ldelim}...{rdelim} 左分隔符{和右分隔符} {capture}...{/capture} 将包含的数据保存起来,指定输出 {insert} 和自定义函数类型,但有不被缓存的特点 Smarty提供了两组用于遍历和循环的函数,分别是foreach和section函数。他们会分别生成PHP中的foreach循环和for循环。 {foreach from=$arr key=key item=value} {$key}=>{$value} {foreachelse} 没有任何数据 {/foreach} 遍历数组,一维循环 {foreach from=$arr key=key item=item name=lee} {foreach from=$item item=item} {$item} {/foreach} <br /> {/foreach} 遍历数组,两位循环 {$smarty.foreach.lee.total} 循环次数 {section loop=$arr1 name=a} {$arr1[a]} {sectionelse} 没有任何数据 {/section} 循环数组 {section loop=$arr4 name=a} {$arr4[a].id}.{$arr4[a].name}.{$arr4[a].product} {section loop=$arr4[a].arr name=b} {$arr4[a].arr[b]} {/section} <br /> {/section} 二维数组下还有一维的用法
最新评论