多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
> 插件钩子的信息变量名为$hooks。 比如添加一个系统钩子 ~~~ public $hooks = [ 'page_tips', ]; ~~~ `page_tips`钩子是系统自带的,所以直接这样定义,然后在插件入口文件定义钩子方法。 ~~~ public function pageTips($params) { echo '<div class="alert alert-success alert-dismissable"> <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button> <p>Hello World</p> </div>'; } ~~~ ### 自定义钩子 ~~~ public $hooks = [ 'my_hook' => '我的钩子', ]; ~~~ 自定义钩子的话,要写明钩子名和钩子说明,如果是系统本身已有的钩子,不用填写钩子说明。 ~~~ public function myHook($params) { echo '我的钩子'; } ~~~ 定义好钩子和钩子实现方法之后,然后在适当的位置监听钩子,比如模板文件,或者控制器。 ### 监听钩子 ~~~ \think\facade\Hook::listen('my_hook'); ~~~ 也可以使用hook函数 ~~~ hook('my_hook'); ~~~