smarty高級(jí)特性之過(guò)濾器的使用方法
本文實(shí)例分析了smarty高級(jí)特性之過(guò)濾器的使用方法。分享給大家供大家參考,具體如下:
高級(jí)特性中過(guò)濾器的使用
1、預(yù)過(guò)濾器
function remove_dw_comments($tpl_source, &$smarty)
{
return preg_replace("/<!--#.*-->/U","",$tpl_source);
//去除原tpl文件中的注釋,使其在編譯后的文件中不顯示
}
//注冊(cè)預(yù)過(guò)濾器
$smarty->register_prefilter("remove_dw_comments");
$smarty->display("test1.tpl");
test1.tpl
<h1>與過(guò)濾器的使用</h1>
<!--#hello--> 注釋的格式
這樣的話,注釋在編譯后的文件中被過(guò)濾掉
2、后過(guò)濾器
function add_header_comment($tpl_source, &$smarty)
{
return "<?php echo \"<!-- Created by Smarty! -->\n\" ?>\n".$tpl_source;
//添加頭部注釋
}
//注冊(cè)后過(guò)濾器
$smarty->register_postfilter("add_header_comment");
$smarty->display('test2.tpl');
模板文件:
test2.tpl
頭部會(huì)產(chǎn)生注釋:
<!-- Created by Smarty! -->
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");
希望本文所述對(duì)大家基于smarty模板的PHP程序設(shè)計(jì)有所幫助。
- Ajax+smarty技術(shù)實(shí)現(xiàn)無(wú)刷新分頁(yè)
- Zend Framework實(shí)現(xiàn)Zend_View集成Smarty模板系統(tǒng)的方法
- Codeigniter中集成smarty和adodb的方法
- PHP文件緩存smarty模板應(yīng)用實(shí)例分析
- yii,CI,yaf框架+smarty模板使用方法
- smarty高級(jí)特性之對(duì)象的使用方法
- php實(shí)現(xiàn)smarty模板無(wú)限極分類的方法
- smarty簡(jiǎn)單應(yīng)用實(shí)例
- Smarty使用自定義資源的方法
- smarty中常用方法實(shí)例總結(jié)
- Smarty最簡(jiǎn)單實(shí)現(xiàn)列表奇偶變色的方法
- Smarty foreach控制循環(huán)次數(shù)的一些方法
- CodeIgniter中使用Smarty3基本配置
- smarty學(xué)習(xí)筆記之常見代碼段用法總結(jié)
相關(guān)文章
詳解在YII2框架中使用UEditor編輯器發(fā)布文章
這篇文章主要介紹了在YII2框架中使用UEditor編輯器發(fā)布文章,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-11-11
ThinkPHP中__initialize()和類的構(gòu)造函數(shù)__construct()用法分析
這篇文章主要介紹了ThinkPHP中__initialize()和類的構(gòu)造函數(shù)__construct()用法,以實(shí)例形式分析了ThinkPHP中類的初始化時(shí)構(gòu)造子類的方法,是采用ThinkPHP進(jìn)行面向?qū)ο蟪绦蛟O(shè)計(jì)中比較重要的概念,需要的朋友可以參考下2014-11-11
yii2 RBAC使用DbManager實(shí)現(xiàn)后臺(tái)權(quán)限判斷的方法
這篇文章主要介紹了yii2 RBAC使用DbManager實(shí)現(xiàn)后臺(tái)權(quán)限判斷的方法,結(jié)合實(shí)例形式較為詳細(xì)的分析了Yii2權(quán)限控制的原理與相關(guān)技巧,需要的朋友可以參考下2016-07-07
Thinkphp框架 表單自動(dòng)驗(yàn)證登錄注冊(cè) ajax自動(dòng)驗(yàn)證登錄注冊(cè)
這篇文章主要介紹了Thinkphp框架 表單自動(dòng)驗(yàn)證登錄注冊(cè) ajax自動(dòng)驗(yàn)證登錄注冊(cè)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2016-12-12
ThinkPHP實(shí)現(xiàn)動(dòng)態(tài)包含文件的方法
這篇文章主要介紹了ThinkPHP實(shí)現(xiàn)動(dòng)態(tài)包含文件的方法,是進(jìn)行ThinkPHP項(xiàng)目開發(fā)中非常實(shí)用的技巧,需要的朋友可以參考下2014-11-11
Ubuntu 16.04中Laravel5.4升級(jí)到5.6的步驟
這篇文章主要給大家介紹了關(guān)于在Ubuntu 16.04中Laravel5.4升級(jí)到5.6的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12
Laravel5中實(shí)現(xiàn)模糊匹配加多條件查詢功能的方法
這篇文章主要介紹了Laravel5中實(shí)現(xiàn)模糊匹配加多條件查詢功能的方法,結(jié)合實(shí)例形式分析了Laravel5多條件模糊查詢及相關(guān)封裝操作技巧,需要的朋友可以參考下2018-03-03
tp5(thinkPHP5框架)captcha驗(yàn)證碼配置及驗(yàn)證操作示例
這篇文章主要介紹了tp5(thinkPHP5框架)captcha驗(yàn)證碼配置及驗(yàn)證操作,結(jié)合實(shí)例形式分析了基于thinkPHP5框架的captcha驗(yàn)證碼配置及驗(yàn)證操作具體步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2019-05-05
php DOS攻擊實(shí)現(xiàn)代碼(附如何防范)
小段php代碼實(shí)現(xiàn)DOS攻擊,有時(shí)候通過(guò)這段代碼不需要獲取服務(wù)器權(quán)限也可以作為攻擊的肉雞了,所以大家一定要注意網(wǎng)站安全2012-05-05

