講解Thinkphp框架擴展之行為擴展原理與實現(xiàn)方法-創(chuàng)新互聯(lián)

這篇文章主要介紹“講解Thinkphp 框架擴展之行為擴展原理與實現(xiàn)方法”,在日常操作中,相信很多人在講解Thinkphp 框架擴展之行為擴展原理與實現(xiàn)方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”講解Thinkphp 框架擴展之行為擴展原理與實現(xiàn)方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

成都創(chuàng)新互聯(lián)是少有的網(wǎng)站建設、成都網(wǎng)站設計、營銷型企業(yè)網(wǎng)站、微信小程序、手機APP,開發(fā)、制作、設計、賣鏈接、推廣優(yōu)化一站式服務網(wǎng)絡公司,自2013年起,堅持透明化,價格低,無套路經(jīng)營理念。讓網(wǎng)頁驚喜每一位訪客多年來深受用戶好評

系統(tǒng)核心提供的標簽位置包括下面幾個(按照執(zhí)行順序排列):

app_init應用初始化標簽位
path_infoPATH_INFO檢測標簽位
app_begin應用開始標簽位
action_name操作方法名標簽位
action_begin控制器開始標簽位
view_begin視圖輸出開始標簽位
view_parse視圖解析標簽位
template_filter模板內(nèi)容解析標簽位
view_filter視圖輸出過濾標簽位
view_end視圖輸出結束標簽位
action_end控制器結束標簽位
app_end應用結束標簽位

在每個標簽位置,可以配置多個行為定義,行為的執(zhí)行順序按照定義的順序依次執(zhí)行。除非前面的行為里面中斷執(zhí)行了(某些行為可能需要中斷執(zhí)行,例如檢測機器人或者非法執(zhí)行行為),否則會繼續(xù)下一個行為的執(zhí)行。 行為定義: 通過Common\Conf\tags.php配置文件定義,格式如下:

<?php
return array(
  'action_begin'=>array('Home\\Behaviors\\TestBehavior','Home\\Behaviors\\Test1Behavior'), 
);

上面注冊了兩個行為,分別是Home模塊下的test和test1行為,類文件位于Home模塊目錄下的Behaviors目錄,可以自定義目錄。

行為必須是一個包含命名空間路徑的類,如上的 Home\Behaviors\TestBehavior 對應的類是 Home/Behaviors/TestBehavior.class.php。

除了這些系統(tǒng)內(nèi)置標簽之外,開發(fā)人員還可以在應用中添加自己的應用標簽。 比如在控制器的_initialize方法中:

\Think\Hook::add('action_begin','Home\\Behaviors\\TestBehavior');
//同時添加多個行為,只要將第二個參數(shù)換成數(shù)組即可。

行為類的定義,以上面的test行為為例:

<?php
namespace Home\Behaviors;
class TestBehavior extends \Think\Behavior{
  //行為執(zhí)行入口
  public function run(&$param){
 
  }
}

行為類建議繼承\(zhòng)Think\Behavior,必須實現(xiàn)run(&$param)方法,行為是通過這個方法執(zhí)行的。

行為的觸發(fā): 只要在合適的地方通過以下代碼

\Think\Hook::listen('標簽名'[,參數(shù)]);
// 或者
// tag('標簽名'[,參數(shù)]);

當應用執(zhí)行到這個地方的時候?qū)⒆詣佑|發(fā)指定標簽名下的所有行為類。

isten方法可以傳入并且只接受一個參數(shù),如果需要傳入多個參數(shù),請使用數(shù)組,該參數(shù)為引用傳值,所以只能傳入變量。 參數(shù)可以被run(&$param)中的$param接收。

到此,關于“講解Thinkphp 框架擴展之行為擴展原理與實現(xiàn)方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

分享題目:講解Thinkphp框架擴展之行為擴展原理與實現(xiàn)方法-創(chuàng)新互聯(lián)
網(wǎng)站網(wǎng)址:http://muchs.cn/article32/idjsc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供手機網(wǎng)站建設外貿(mào)建站網(wǎng)站營銷、用戶體驗、網(wǎng)站改版虛擬主機

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務器托管