Download the PHP package ctfang/laravel-watch without Composer
On this page you can find all versions of the php package ctfang/laravel-watch. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Please rate this library. Is it a good library?
Informations about the package laravel-watch
laravel 业务函数委托执行
函数委托执行,特别适用于扩展业务时又不需要侵入原有代码。
安装
composer require ctfang/laravel-watch
如果使用Phpstorm, 可以安装扩展 PHP Annotations
方便提示。
使用
在app目录下任意类的函数注释上加 @Watch(test::class,"func")
就会自动经过 test->func
。
1。先设计一个场景,一个登陆需求。 原来代码是这样的,只实现了登陆功能,成功返回用户信息。
2。需求有变动,需要加上登陆流水、登陆途径和流失记录(登陆失败也记录)
新增逻辑类 LoginLogic
, 实现逻辑
修改 LoginController
文件新增注释代码, 注意注释的类使用也是要use
进来的
注意
为了更方便委托,logic
类必须需要make方式或者laravel
注入方式实例类
例如一个查看用户info
的函数需要代理,controller
函数需要这样子写,LoginLogic
需要注入或者app('LoginLogic')
public function info(Request $request, LoginLogic $logic)
{
$userId = $request->input('user_id');
return ['user' => $logic->info($userId)];
}
info
的函数代码
/**
* @Watch(LoginLogic::class,"infoWatch")
*/
public function info(int $id)
{
return [];
}
public function infoWatch(Context $context, \Closure $next)
{
$id = $context->getInput('id');
echo "玩家被读取" . $id;
}
All versions of laravel-watch with dependencies
PHP Build Version
Package Version
The package ctfang/laravel-watch contains the following files
Loading the files please wait ....