smarty高级特性之过滤器的使用方法

PHP实例:smarty高级特性之过滤器的使用方法》要点:
本文介绍了PHP实例:smarty高级特性之过滤器的使用方法,希望对您有用。如果有疑问,可以联系我们。

PHP实例本文实例分析了smarty高级特性之过滤器的使用办法.分享给大家供大家参考,具体如下:

PHP实例高级特性中过滤器的使用

PHP实例1、预过滤器

PHP实例
function remove_dw_comments($tpl_source,&$smarty)
{
 return preg_replace("/<!--#.*-->/U","",$tpl_source);
 //去除原tpl文件中的注释,使其在编译后的文件不显示
}
//注册预过滤器
$smarty->register_prefilter("remove_dw_comments");
$smarty->display("test1.tpl");

PHP实例test1.tpl

PHP实例<h1>与过滤器的使用</h1>
<!--#hello-->  注释的格式
这样的话,注释在编译后的文件中被过滤掉

PHP实例2、后过滤器

PHP实例
function add_header_comment($tpl_source,&$smarty)
{
 return "<?PHP echo \"<!-- Created by Smarty! -->\n\" ?>\n".$tpl_source;
 //添加头部注释
}
//注册后过滤器
$smarty->register_postfilter("add_header_comment");
$smarty->display('test2.tpl');

PHP实例模板文件

PHP实例test2.tpl

PHP实例头部会产生注释:

PHP实例<!-- Created by Smarty! -->

PHP实例3、输出滤镜

PHP实例
function protect_email($tpl_output,&$smarty){
  $tpl_output = preg_replace('!(\S+)@([a-zA-Z0-9\.\-]+\.([a-zA-Z]{2,3}|[0-9]{1,3}))!','$1%40$2',$tpl_output);
  return $tpl_output;}// register the outputfilter$smarty->register_outputfilter("protect_email");
  $smarty->display("index.tpl");
}
$smarty->register_outputfilter("protect_email");
$smarty->display("index.tpl");

PHP实例希望本文所述对大家基于smarty模板的PHP程序设计有所赞助.

欢迎参与《PHP实例:smarty高级特性之过滤器的使用方法》讨论,分享您的想法,编程之家 jb51.cc为您提供专业教程。

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...