聯系官方銷售客服
1835022288
028-61286886
鉤子特性提供了一種方法來修改框架的內部運作流程,而無需修改核心文件。
有些時候你可能希望在執行流程中的某些階段添加一些動作,例如在控制器加載之前或之后執行一段腳本, 或者在其他的某些位置觸發你的腳本。
鉤子程序文件
./config/hooks.php 此文件是網站鉤子的定義文件,你可以把腳本寫在這里。
執行方法格式
\Phpcmf\Hooks::on(掛鉤點名稱, 執行代碼函數, 執行序號越大越優先); 或者 \Phpcmf\Hooks::app_on(插件名稱, 掛鉤點名稱, 執行代碼函數, 執行序號越大越優先);
掛鉤點名稱,由系統提供以便二次開發。
執行代碼,你可以使用lambda表達式(匿名函數或閉包)作為鉤子執行,這樣語法更簡單:
// appname指插件目錄,表示這個插件在調用,方便排查是哪個插件在調用這個鉤子
執行序號,越大越靠前執行,不傳入就按默認順序。
一、系統自帶的鉤子
系統會內置一些常用的鉤子,例如:
cms_init 系統初始化后執行 cms_close 系統關閉時 cms_end 系統post執行結束時 cms_404 系統404時 cms_view 模板解析之后 ....
我們會根據開發者的需求來增加一些常用的鉤子,當開發者需要時,可以給框架創始人提出。
二、自定義:無返回值的鉤子
定義鉤子點
\Phpcmf\Hooks::trigger('cms_diy_hook');
定義執行鉤子函數
三、自定義:有返回值的鉤子
定義鉤子點
定義執行鉤子函數