yii2 给框架底层预定义事件自定义处理程序。
1.
common\config\main.php 修改配置文件添加 'as behaviors' => 'backend\behaviors\InsertHandler'
2.
backend下面新建文件夹behaviors, 新建文件InsertHandler.php
1 namespace backend\behaviors; 2 3 use yii\db\ActiveRecord; 4 5 class InsertHandler extent \yii\base\Module 6 { 7 //给beforeInsert事件绑定处理程序 8 public function events() 9 {10 return [11 ActiveRecord::BEFOREINSERT => 'handler'12 ];13 }14 15 //事件处理程序16 public function handler($event)17 {18 //触发事件的AR模型19 $arModel = $event->sender; 20 21 //下面写一些事件处理程序22 //......23 }24 }
yii可以给底层预定义事件,注册事件处理程序, 也可通过on beforeAction => 回调函数方式给其添加处理程序。
以上纯属个人观点,愿读者有所收益。。。