微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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为您提供专业教程。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐