PHP头条
热点:

php-smarty模板使用教程(二)


第一部分(入口):smarty模板介绍和入门

------------------------新内容开始————————————   Smarty  模板设计篇   四、内建函数   1、 capture 语法: {capture name=‘var’}    name表示将内容保存到指定的变量中 内容 {/capture} 捕获函数之间的内容,而不是输出 输出格式: {$smarty.capture.var}   2、 config_load  {config_load file=“file”section=“section”} 加载配置文件 File:要加载的配置文件名称 Section:要加载的配置节 关于配置文件中的变量有以下两种引用方式: {#var#} {$smarty.config.var}   3、 foreach,foreachelse {foreach from=数组 key=键 name=名称 item=内容 }  {foreachelse}  {/foreach} foreach函数用于遍历数组 foreachelese函数表示当数组没有任何数据时执行的代码 From:要遍历的数组 Key:遍历到的数组下标 Item:遍历到的数组元素值 Name:为当前的foreach命名 l foreach 的内置变量 $smarty.foreach.name.index :索引    从0开始排列 $smarty.foreach.name.iteration :第几次  从1开排列 $smarty.foreach.name.first :如果是第一次执行时为true $smarty.foreach.name.last :如果是最后一次执行时为true $smarty.foreach.name.total :循环总次数 l foreach 的内置变量   3.0 {foreach $myarray as $key => $value} {$value@iteration} 当前循环是第几次 {$value@index} 循环索引 {$value@first}第一次循环时为true {$value@last}最后一次循环时为true {$value@total}循环总次数 {/foreach}        4、 include  {include file=“file” assign=“var” [var ...]} 包含另一个模板文件 File:要包含的模板文件 Assign:将要包含的文件的结果保存至指定的变量,本次不会输出 [var …]:可以给模板传参   名=值 在php中传递的变量可以在子模板中使用  
  5、include_php { include_php file=“file” assign=“var” once=“true|false”} 包含一个php文件 File:要包含的php文件 Assign:将输出结果保存至指定的变量中 Once:是否只包含一次 举例: 现在我想在模板中显示最新的系统时间 在smarty3.0以前,可以直接使用include_php内建函数,但是后来考虑到一些安全方面的问题,所以在smarty3.0以后,将这个功能保留到了SmartyBC.class.php这个文件中  
  6 insert { insert name=“func”assign=“var” [var ...] }  使用insert可以调用某个php自定义函数 function insert_func(){......} name:要调用的函数名称 这个函数在php中必须以insert_为前缀 assign:保存输出结果 [var…]:给要调用的函数传参   smarty的使用
  smarty
  Include:内容可以被缓存 Insert:内容永不缓存   7、if elseif else 语法: {if} {elseif} {else} {/if}   smarty
  8、ldelim、rdelim l ldelim {ldelim} :{ l rdelim {rdelim} :} 比如说,在页中就想输出的是{$a}原样 {ldelim}$a{rdelim}   9、literal {literal}  …… {/literal} Literal 两个标记之间的内容不会被smarty所解析  
    10、php {php} …… {/php} 可以在这对php标记之中加php代码 这个功以在smarty3.0中被放到了smartyBC.class.php这个文件中,如果想使用,需要引用的是该文件 现在被放到smartyBc.class.php类的内建函数,以后有可能是不支持的,不建议大家使用  
    11、section,sectionelse     {section name=名称 loop=循环数组(次数)  start=开始(0) step=步阶(1)  max=最大循环次数}
{sectionelse}   loop指定的数组没有值时 {/sectionelse} {/section} 通过指定的数组进行循环,数组元素个数决定了循环次数 Name:命名 Loop:循环数组 (这个数组元素个数决定了决数) 以上两个属性是必添的 Start:开始索引 Step:步长 Max:最大的循环次数  
   
  l section的内置变量 {$smarty.section.name.index} :索引 {$smarty.section.name.index_prev} :上一次的索引 {$smarty.section.name.index_next} :下一次的索引 {$smarty.section.name.iteration } :第几次 {$smarty.section.name.first|last} :第1次和最后一次时为真 {$smarty.section.name.total} :共循环多少次   12、strip {strip} …… {/strip} 去掉左右空格  

www.phpzy.comtrue/phpkj/9496.htmlTechArticlephp-smarty模板使用教程(二) 第一部分(入口):smarty模板介绍和入门 ------------------------新内容开始————————————Smarty模板设计篇四、内建函数1、capture语法:{capturename=‘v...

相关文章

相关频道:

PHP之友评论

今天推荐