从Laravel中的服务提供商处获取url参数

时间:2016-08-04 10:08:30

标签: php laravel laravel-5

通常在Laravel中你会得到一个包含所有参数的请求包。但在服务提供商中并非如此。但是我们确实有request()个对象。

但是,这不包含资源路由中给出的url参数。

所以我正在寻找的是一种从路线中检索{id}的方法。

我试过了:

request()->route('id')
Route::get('id')
Request::get('id')

所有这些都返回null

1 个答案:

答案 0 :(得分:4)

在解析请求并知道请求参数之前,会调用任何服务提供商的 boot() register()方法,这就是为什么你可以& #39; t访问它们。

服务提供商应该注册服务,不应该依赖于请求上下文。如果您想在服务中使用请求参数,请声明请求服务作为您服务的依赖项,以便在您的服务实例化时注入它。