什么是 Smarty?
为何使用它?
用例和工作流程
语法比较
模板继承
最佳实践
速成课
{setfilter}...{/setfilter}
块标签允许定义模板实例的变量过滤器。
语法:{setfilter filter1|filter2|filter3....}...{/setfilter}
过滤器可以是
由名称指定的变量过滤器插件。
由名称和可选附加参数指定的修饰符。
{setfilter}...{/setfilter}
块可以嵌套。内部块的过滤器定义将替换外部块的定义。
模板实例过滤器将附加到其他修饰符和过滤器上运行。它们的运行顺序如下:修饰符、default_modifier、$escape_html、注册的变量过滤器、自动加载的变量过滤器、模板实例的变量过滤器。使用nofilter
标志可以禁用default_modifier之后的所有内容。
示例 7.77.{setfilter} 标签
<script> {setfilter filter1} {$foo} {* filter1 runs on output of $foo *} {setfilter filter2|mod:true} {$bar} {* filter2 and modifier mod runs on output of $bar *} {/setfilter} {$buh} {* filter1 runs on output of $buh *} {/setfilter} {$blar} {* no template instance filter runs on output of $blar} </script>
模板实例过滤器的设置不影响包含的子模板的输出。