Thinkphp3.23中 行為擴充套件和外掛機制介紹
阿新 • • 發佈:2019-01-05
行為(Behavior)是ThinkPHP擴充套件機制中比較關鍵的一項擴充套件,行為既可以獨立呼叫,也可以繫結到某個標籤(位)中進行偵聽。
3.2版裡,有了一個外掛的概念,和行為共用一個Hook類,所以放在一起說,原理上並無太大區別。
1.行為擴充套件和外掛機制 配置的方法 (大同小異)
⑴行為擴充套件
在Application/Common/Conf目錄下建立一個tags.php
⑵外掛機制<?php /** * Created by PhpStorm. * User: Administrator * Date: 16-8-16 * Time: 上午10:08 */ return array( "login" => array("Behaviors\\testBehavior"),//行為 );
在Application/Common/Conf目錄下建立一個tags.php
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 16-8-16
* Time: 上午10:08
*/
return array(
'showflash' => array('Addons\\test\\testAddon'),//外掛
'clearflash'=>array('Addons\\test\\testAddon'),//另一個外掛外掛
);
2.建立類
⑴行為類建立 在Application/Behaviors/testBehavior.class.php
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 16-8-16
* Time: 上午10:12
*/
namespace Behaviors;
class testBehavior {
function run($arg){
echo "this is a Behaviors ".$arg;
}
}
⑵外掛類建立 在 Application/Addons/test/testAddon.class.php
3.觸發監聽的方法<?php /** * Created by PhpStorm. * User: Administrator * Date: 16-8-16 * Time: 上午10:42 */ namespace Addons\test; class testAddon { function showflash(){ echo "這是外掛執行入口"; } function clearflash(){ echo "這是另外一個外掛鉤子入口"; } }
⑴行為擴充套件
$usernam="junxy";
\Think\Hook::listen('login',$usernam);//監聽一個名為login的鉤子
⑵外掛機制
\Think\Hook::listen('showflash');//監聽一個名為showflash的鉤子
\Think\Hook::listen('clearflash');//監聽一個名為clearflash的鉤子