What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
For sponsorship, advertising, news or other inquiries, contact us at:
输出过滤器将处理模板的输出内容, 执行的时机是在模板载入并执行之后,但在内容显示之前。
string smarty_outputfilter_name( |
$template_output, | |
$template) ; |
string $template_output
;object $template
;第一个参数是将会被处理的输出内容, 第二个参数是调用该函数的Smarty实例。 插件会对内容进行处理并返回结果。
Example 18.9. 输出过滤器
<?php /* * Smarty plugin * ------------------------------------------------------------- * File: outputfilter.protect_email.php * Type: outputfilter * Name: protect_email * Purpose: 将邮件地址的@转换成%40,以防止垃圾邮件爬虫的收集。 * ------------------------------------------------------------- */ function smarty_outputfilter_protect_email($output, Smarty_Internal_Template $template) { return preg_replace('!(\S+)@([a-zA-Z0-9\.\-]+\.([a-zA-Z]{2,3}|[0-9]{1,3}))!', '$1%40$2', $output); } ?>