Laravel DB::listen get controller和方法,从中调用查询



如 https://laravel.com/docs/5.5/database 中所建议

我有

DB::listen(function(query) {
  ....
});

从我的Laravel应用程序记录查询。

我还想找出从哪个控制器或函数调用此查询。我怎样才能做到这一点?这可能吗?

只要查询在请求期间触发,您应该能够使用它。

DB::listen(function($query) {
     dd($this->app->request->route()->action['uses']);
});
output:  "AppHttpControllersSomeController@someAction"

还有$this->app->request->route()->action['controller']

在无请求情况下,可能有一些方法可以使用$this-app访问控制器。

最新更新