首页 > Web开发 > 详细

ThinkPHP钩子和行为

时间:2020-02-28 10:59:20      阅读:62      评论:0      收藏:0      [点我收藏+]

TP5.1的行为是一个比较抽象的概念,执行的流程用户的注册,登录,退出登录等等都可以作为一个行为。。
而不同的行为之间也具有位置共同性,比如,有些行为的作用位置在用户注册后,在登录之后,退出登录之后,等等有些行为的作用位置都是在应用执行前,有些行为都是在模板输出之后,把这些行为发生作用的位置称之为钩子
TP5设置钩子很简单,只需要一行代码,需要引入think\facade\Hook类
Hook::listen(‘钩子名称‘,‘参数‘,‘是否只有一次有效返回值‘);

  

钩子类似于AOP编程思想

比如用户注册:

$user = User::create($params);
$this->_user = User::get($user->id);
//设置Token
$this->_token = Random::uuid();
Token::set($this->_token, $user->id, $this->keeptime);

//注册成功的事件
Hook::listen("user_register_successed", $this->_user);

使用think\facade\Hook类的add方法注册行为,

//监听注册成功事件
Hook::add(‘user_register_successed‘, function ($user) use ($auth) {
Cookie::set(‘uid‘, $user->id);
Cookie::set(‘token‘, $auth->getToken());
});
————————————————
版权声明:本文为CSDN博主「一场丶」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_40698401/article/details/81773209

ThinkPHP钩子和行为

原文:https://www.cnblogs.com/liliuguang/p/12375948.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!