在正常的的程序之外想要改动少的增加一些别的功能
现在admin模块下的behavior下创建Ceshi.php文件
钩子里面的方法的命名规范 驼峰写法(注意:如果一个钩子名称绑定了多个行为,从左往右执行,如果中间那一层hook返回了false ,啧当前的钩子执行完这个行为之后的行为都无法被触发,但是原程序继续执行)
//Ceshi.php 钩子,当前的行为类演示多个行为的情景
<?
namespace app\admin\behavior;
class Ceshi
{
/**************行为类只有一个行为*********************/
/* public function run()
{
echo 'only one';
return true;
}*/
/**********************类里面有多个行为,按下面写**************************/
public function initTest($params)
{
echo 'this is hook 1';
dump($params);
return true;
}
public function initTest2($params)
{
echo 'this is hook 2';
dump($params);
return true;
}
}
1,动态绑定钩子
/*测试controller*/
<?
namespace app\admin\controller;
use think\facade\Hook;
class Index
{
//绑定多个行为类,动态绑定
public function getHooke()
{
//动态绑定加这个
Hook::add('init_test', ["app\\admin\\behavior\\Ceshi"])

本文介绍了TP5.1框架中Hook钩子的使用,包括在admin模块下创建Behavior并定义钩子方法的命名规范,以及如何动态绑定和通过配置文件绑定钩子。钩子的执行顺序遵循从左到右的原则,一旦中间某个方法返回false,后续行为将不会被执行,但不影响原程序继续运行。示例中提到了在app ag.php配置文件的修改和index.php中的调用方法。
最低0.47元/天 解锁文章
2859

被折叠的 条评论
为什么被折叠?



