钩子和行为

说明:用的是ThinkPHP5.1.5版本.这里是把tp5.1文档里面说不清楚的地方说明白了,配合官方完全开发手册看,就一目了然了.来战吧,嘿嘿嘿

要设置一个钩子,只需要在相关的位置添加一行代码(事先需要引入think\facade\Hook类):

use think\facade\Hook;

步骤:

一:在tags.php文件下定义行为名称

如果应用目录下面和模块目录下面的tags.php都定义了app_init的行为绑定的话,会采用合并模式,如果希望覆盖,那么可以在模块目录下面的tags.php中定义如下:

return [
    'app_init'=> [
        'app\\index\\behavior\\CheckAuth',
        '_overlay'=>true
    ],
    'app_end'=> [
        'app\\admin\\behavior\\CronRun'
    ]
]
如果某个行为标签定义了 '_overlay' =>true  就表示覆盖之前的相同标签下面的行为定义。


二:在自定义行为对应的地方,写上行为对应的方法

三:在控制器中调用之前定义的方法

结果如下:


猜你喜欢

转载自blog.csdn.net/weixin_37909391/article/details/79758066
今日推荐