前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >thinkphp 事件

thinkphp 事件

原创
作者头像
mySoul
发布2019-05-30 17:18:25
1.3K0
发布2019-05-30 17:18:25
举报
文章被收录于专栏:mySoulmySoul

使用助手函数注册事件

代码语言:txt
复制
<?php
namespace app\index\controller;

use app\index\model\User;
class Index
{

    public function Index(){
        // 触发UserLogin事件 使用助手函数
        event('UserLogin');
        return "ming";
    }

}

生成事件类

代码语言:txt
复制
php think make:event UserLogin

事件类添加方法

代码语言:txt
复制
<?php

namespace app\event;

use app\index\model\User;

class UserLogin{
    public $user;

    public function _construct(User $user){
        $this->user = $user;
    }
}

这里依赖于model目录下的User类

事件类添加事件标识

此时目录如下

2019-05-25-15-09-41----
2019-05-25-15-09-41----

添加标识

代码语言:txt
复制
<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------

// 事件定义文件
return [
    'bind'      => [
        'UserLogin' => 'app\event\UserLogin',
    ],

    'listen'    => [
        'AppInit'  => [],
        'HttpRun'  => [],
        'HttpEnd'  => [],
        'LogLevel' => [],
        'LogWrite' => [],
    ],

    'subscribe' => [
    ],
];

此时访问 http://localhost:8082/ 可以发现已经访问成功

事件监听

手动注册一个事件监听

代码语言:txt
复制
    /**
     * 事件监听
     */
    public function listen(){
        Event::listen('UserLogin', function ($user){
            
        });
    }

可以使用命令行生成事件监听

代码语言:txt
复制
php think make:listener UserLogin

事件订阅同理

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用助手函数注册事件
  • 生成事件类
  • 事件类添加方法
  • 事件类添加事件标识
  • 事件监听
  • 事件订阅同理
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档