加入收藏 | 设为首页 | 会员中心 | 我要投稿 天瑞地安资讯网_保定站长网 (https://www.52baoding.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2022-10-11 15:13:36 所属栏目:PHP教程 来源:
导读:  本文实例分析了smarty高级特性之过滤器的使用方法。分享给大家供大家参考,具体如下:

  高级特性中过滤器的使用

  1、预过滤器

  function remove_dw_comments($tpl_source, &$smarty)
  
  本文实例分析了smarty高级特性之过滤器的使用方法。分享给大家供大家参考,具体如下:
 
  高级特性中过滤器的使用
 
  1、预过滤器
 
  function remove_dw_comments($tpl_source, &$smarty)
  {
   return preg_replace("//U","",$tpl_source);
   //去除原tpl文件中的注释,使其在编译后的文件中不显示
  }
  //注册预过滤器
  $smarty->register_prefilter("remove_dw_comments");
  $smarty->display("test1.tpl");
  test1.tpl
 
  与过滤器的使用
 
  注释的格式
 
  这样的话PHP过滤器,注释在编译后的文件中被过滤掉
 
  2、后过滤器
 
  function add_header_comment($tpl_source, &$smarty)
  {
   return "\n".$tpl_source;
   //添加头部注释
  }
  //注册后过滤器
  $smarty->register_postfilter("add_header_comment");
  $smarty->display('test2.tpl');
  模板文件:
 
  test2.tpl
 
  头部会产生注释:
 
  3、输出滤镜
 
  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");
  希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。
 

(编辑:天瑞地安资讯网_保定站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!