模型类支持before_delete、after_delete、before_write、after_write、before_update、after_update、before_insert、after_insert事件行为,使用方法如下:
User::event('before_insert',function($user){
if($user->status != 1){
return false;
}
});
if($user->status != 1){
return false;
}
});
注册的回调方法支持传入一个参数(当前的模型对象实例),并且before_write、before_insert、 before_update 、before_delete事件方法如果返回false,则不会继续执行。
支持给一个位置注册多个回调方法,例如:
User::event('before_insert',function($user){
if($user->status != 1){
return false;
}
});
// 注册回调到beforeInsert函数
User::event('before_insert','beforeInsert');
if($user->status != 1){
return false;
}
});
// 注册回调到beforeInsert函数
User::event('before_insert','beforeInsert');
可以在模型类的init方法里面统一注册模型事件,例如:
namespace appindexmodel;
use thinkModel;
class User extends Model
{
protected static function init()
{
User::event('before_insert',function($user){
if($user->status != 1){
return false;
}
});
}
}
use thinkModel;
class User extends Model
{
protected static function init()
{
User::event('before_insert',function($user){
if($user->status != 1){
return false;
}
});
}
}
- 文章导航