zoukankan      html  css  js  c++  java
  • thinkphp6.0模型篇之模型和数据库事件

    一、数据库事件

    1、执行增删改查的时候,可以触发一些事件来执行额外的操作
    2、这些额外的事件可以部署在构造方法里等待激活执行
    3、数据库事件执行方法为Db::event(‘事件名’,‘执行函数’),具体事件名如下
    在这里插入图片描述
    4、数据库事件只正常find、select、update、delete、insert这几个方法
    5、在控制器端,事件一般可以写在初始化方法里,方便统一管理

    public function initialize()
    {
        Db::event('before_select',function ($query)
        {
        echo '执行了批量查询操作';
        });
        Db::event('after_update',function ($query)
        {
        echo '执行了修改操作';
    }

    二、模型事件

    1、支持的事件类型更加的丰富,具体如下
    在这里插入图片描述
    2、在模型端使用静态方法调用即可完成事件触发

    protected static function onAfterRead($query)
        {
            echo '执行了查询方法';
        }
        protected static function onBeforeInsert()
        {
            echo '修改前';
        }
        protected static function onAfterInsert()
        {
            echo '修改成功';
        }
  • 相关阅读:
    ISBN号码
    计数问题
    小玉在游泳
    数字反转
    单调队列(学习笔记)
    LCA(学习笔记)
    emacs配置文件
    线段树(学习笔记)
    RMQ问题 ST算法(学习笔记)
    Lucas卢卡斯定理(学习笔记)
  • 原文地址:https://www.cnblogs.com/laijinquan/p/13823999.html
Copyright © 2011-2022 走看看