php—Smarty-7(24)

三、            方法

l  assign      :为模板分配变量

l  assignByRef :为模板分配变量 (按引用传递)

技术分享

l  append  :追加模板变量到一个数组中

 技术分享

l  appendByRef :追加模板变量到一个数组中 (按引用传递)

 技术分享

 

l  clearAllAssign

清除所有已赋值变量

技术分享

l   clearCache

清除缓存

l  configLoad 加载配置文件

在smarty中,加载配置文件两种方法:

 

1)在模板中  {config_load file=’….’}

2)在程序中  $smarty->configLoad($file[,$section])

l  clearConfig

清除所有配置文件变量

l  display

读取、替换、输出

l  fetch

读取、替换、返回

l  templateExists :判断模板是否存在

技术分享

尝试加载一个不存在的模板会报错,在显示之前应该判断

assign和assignByRef的区别:

技术分享

Display和fetch的区别:

技术分享

 

四、            过滤器

过滤器就是用于过滤数据

1、过滤器的种类:

1)预过滤器           Prefilters

2)后过滤器             Postfilters

3)输出过滤器         Output Filters

根据触发时间的不同,划分出以上三种过滤器

2、工作流程

tpl源文件 =〉Prefilter =〉编译tpl文件 => Postfilter =>保存到磁盘=> 编译过的php文件执行=〉Output Filters(=〉如果有smarty cache的话,Output Filters的内容会缓存) =>结果输出。

技术分享

3、注册过滤器

 

在Smarty中,过滤器在使用之前必须注册

 

在2.6中,注册过滤器

l  Prefilters

       $smarty->register_prefilter(“func”);

l  Postfilters

       $smarty->register_postfilter(“func”);

l  Output Filters

       $smarty->register_outputfilter(“func”);

注册不同的过滤器调用不同的方法。

3.0中,注册过滤器

$smarty->registerFilter($type, $callback);

$type:过滤器类型

            取值范围:

           Pre:预过滤器

           Post:后过滤器

           Output :输出过滤器

$callback:过滤器函数

4、代码:

技术分享

预过滤和后过滤器第一次编译时会执行,或者模板发生改变后会再次执行

输出过滤器每次都会执行

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。