Php Laravel输入外观与请求外观
基于和Input::get()方法似乎是唯一的区别。我是不是遗漏了什么Php Laravel输入外观与请求外观,php,laravel-5,laravel-facade,Php,Laravel 5,Laravel Facade,基于和Input::get()方法似乎是唯一的区别。我是不是遗漏了什么 我知道验证可以应用于请求,但我不确定输入外观是否也是如此。是的,两个外观非常相似。原因是基础类是相同的(illighte\Http\Request)。您可以通过查看Facade类及其访问器来了解这一点: light\Support\Facades\Input protected static function getFacadeAccessor() { return 'request'; } light\Suppo
我知道验证可以应用于请求,但我不确定输入外观是否也是如此。是的,两个外观非常相似。原因是基础类是相同的(
illighte\Http\Request
)。您可以通过查看Facade类及其访问器来了解这一点:
light\Support\Facades\Input
protected static function getFacadeAccessor()
{
return 'request';
}
light\Support\Facades\Request
protected static function getFacadeAccessor()
{
return 'request';
}
正如您所意识到的,一个区别是
Input::get()
方法。这只是在外观中直接“转换”为Request::input()
:
public static function get($key = null, $default = null)
{
return static::$app['request']->input($key, $default);
}
结论 它们本质上是一样的。这意味着,不需要更改现有代码。然而,如果你想,这不会有任何区别 编写新代码时,应使用
Request
<代码>输入在5.0的文档中没有提及。它没有(正式)被弃用,但鼓励使用Request
关于
Request
,我真正喜欢的是Facade实际上有底层类的名称。这样你就清楚你在处理什么了。然而,这也可能是错误的根源。如果您使用类似于Request::input('name')
的东西,请确保使用use Request导入外观
或使用照明\Support\Facades\Request
和不使用照明\Http\Request。相反的情况适用于依赖项注入。谢谢。你的回答也是我的问题