Request (Facade) 和 Illuminate\Http\Request 之间的区别

7

我开始使用Laravel,想知道该如何选择其中之一。

从5.0版本开始,Laravel文档将请求示例从Request::get('form_input')更改为$request->get('form_input'),但我找不到任何说明他们这样做的原因。

我的疑问是:

  1. 这两个Requests有什么区别吗?
  2. 它们在哪里?
  3. 哪一个是最受欢迎的?
2个回答

2
直截了当的回答:没有(特别的区别) 除此之外,引用自这个来源:Laravel门面是什么以及如何使用它们 一个Laravel门面是一个类,提供了一个类似于静态的接口来访问容器内的服务。根据文档,这些门面作为代理,用于访问容器服务的底层实现。
我完全同意这一点。但对我而言,使用门面模式只是为了使我的代码更加简洁 :)

2

请求门面和request()帮助程序都引用app('request')实例。我认为文档中的示例更改为$request,因为您可以定义自己的Request派生类,服务容器将自动将其注入到操作调用中,就像FormRequest的情况一样,例如:

public function store(UserStoreRequest $request)
{
    $name = $request->input('name');

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接