這篇文章主要介紹了ThinkPHP3.2.2最新開始支援的外掛程式控制器功能的使用方法,非常詳細,這裡推薦給小夥伴們。
3.2.2版本開始支援外掛程式控制器的調用,可以通過更加方便的URL地址訪問到模組中某個外掛程式定義的控制器。
當URL中傳入外掛程式控制器變數的時候,會自動定位到外掛程式控制器中的操作方法。
外掛程式控制器的變數由參數 VAR_ADDON 進行設定,預設為addon,例如我們在URL中傳入:
複製代碼 代碼如下:
http://serverName/Home/info/index/addon/SystemInfo
由於傳入了addon參數,因此這裡的User控制器並非原來的
複製代碼 代碼如下:
Home/Controller/InfoController.class.php
而是調用SystemInfo外掛程式(位於Home/Addon目錄下面)的InfoController控制器了,檔案位於
複製代碼 代碼如下:
Home/Addon/SystemInfo/Controller/InfoController.class.php
外掛程式控制器本身的定義和普通的存取控制器一樣,例如:
複製代碼 代碼如下:
namespace Home\Addon\SystemInfo\Controller; class InfoController extends \Think\Controller{ public function index(){ echo 'Addon SystemInfo'; } }
這樣,我們在訪問
複製代碼 代碼如下:
http://serverName/Home/info/index/addon/SystemInfo
的時候 就會輸出
Addon SystemInfo
如果我們的外掛程式目錄不是Addon,而是Plugin,那麼需要在設定檔中定義:
複製代碼 代碼如下:
'VAR_ADDON' => 'plugin'
然後訪問URL地址就變成了
複製代碼 代碼如下:
http://serverName/Home/info/index/plugin/SystemInfo
注意:目前外掛程式控制器僅支援模組的外掛程式控制器訪問,尚不支援全域的公用外掛程式。
注意:該用法僅針對官網下載的3.2.2版本。後續將會做出一些細節的調整,包括定義外掛程式位置等等。