## 触发器 (trigger)
触发器是指在执行 CURD 时动态执行的方法 , 类似于 Mysql 中的触发器。可以使用相
应触发器完成数据初始化,以及操作结果二次处理的目的。
说明
a. 触发器必须在扩展模型中定义
### 触发器方法
| 方法 | 执行时机 |
| -- | -- |
| __init | 模型实例化 |
| __before_insert(&$data) | 添加数据前 |
| __after_insert(&$data) | 添加数据后 |
| __before_delete() | 删除数据前 |
| __after_delete(&$data) | 删除数据后 |
| __before_update(&$data) | 更新数据后前 |
| __after_update(&$data) | 更新数据后 |
| __before_select() | 查询数据前 |
| __after_select(&$data) | 查询数据后 |
### 开关触发器 trigger
有时有些动作不希望激活触发器,这时可以使用 trigger 方法开启或关闭。
~~~
//开启触发器
M('new')->trigger(true);
~~~
~~~
//关闭触发器
M('new')->trigger(false);
~~~