内建函数

 

config_load :加载配置文件

   file= “配置文件名称”

   section=“区域名称”

 

  $tpl->configs=”./configs” //基准路径

  ./configs/dir_1/a.conf

 <{config_load file=” dir_1/a.conf” section=“one” }>

 

include :

标签用于在当前模板中包含其它子模板.

当前模板中的变量在被包含的子模板中可用

  <{include  file=”header.tpl”}>

<{include  file=”footer.html”}>

 

 

capture

  捕获模板输出的数据并将其存储到一个变量里,而不是把它们输出到页面.

  任何在 {capture name="foo"}和{/capture}之间的数据将被存储到变量$foo中,该变量由name属性指定.
在模板中通过 $smarty.capture.foo 访问该变量.
如果没有指定 name 属性,函数默认将使用 "default" 作为参数.
{capture}必须成对出现,即以{/capture}作为结尾,该函数不能嵌套使用.

 

<{capture name=”自定义区域名”}>

aAaaaaaaaaaaaaa

<{$name}>

<{include  file=”head.tpl”}>

……

<{/capture}>

 

<{$smarty.capture.自定义区域名}>

 

foreach,foreachelse

  功能和语法与php当中类似,====foreach

  foreach($row as $key=>$value){

      …

}

效率差;

for($i=0;$i<5;$i++){  }

 

 变量

  $smarty.foreach.循环名.变量名

iteration :用于显示当前循环的执行次数,从1开始,每执行一次增加 1

 

section,sectionelse   (推荐)for

   功能和效率要比foreach好

   只针对索引数组

   section 显示二维数组 loop

   section 不能处理下标不连续的数组

    

if,elseif,else

 

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、

 include_php

是解决模板部件化的好方法,它使得 php 代码从模板文件中被分离出来. 举个例子:假设有一个从数据库中动态取出数据用于显示站点导航的模板,你可以将得数据内容的 php 逻辑部分分离出来保存在一个单独的文件夹下,并在模板开始的位置包含该 php 脚本. 那么就可以在任何地方包含此模板而不用担心之前数据库信息是否已被程序取出.

insert

函数类似欲 inluce 函数,不同之处是 insert 所包含的内容不会被缓存,每次调用该模板都会重新执行该函数.

php 

标签允许在模板中直接嵌入 php 脚本. 是否处理这些语句取决于$php_handling的设置. 该语句通常不需要使用,当然如果你非常了解此特性或认为必须要用,也可以使用.

ldelim,rdelim  

用于输出分隔符,也就是大括号 "{" 和 "}". 模板引擎总是尝试解释大括号内的内容,因此如果需要输出大括号,请使用此方法.

literal

你可能感兴趣的:(include,php,file,模板引擎,数据库,脚本)