1

如果您查看 Laravel 的配置,您会看到已为符号设置了别名Response

'aliases' => array(
    'Response'        => 'Illuminate\Support\Facades\Response',

实际类上的命名空间,以及 Laravel 使用别名来全局访问 laravel 外观对象的一般模式使得这看起来像是Response一个外观。但是,如果您查看Illuminate\Support\Facades\Response该类 的实际定义

#File: vendor/laravel/framework/src/Illuminate/Support/Facades/Response.php
namespace Illuminate\Support\Facades;

//...    
class Response {

我们可以再次看到,该类存在于Illuminate\Support\Facades命名空间中,但它没有扩展Illuminate\Support\Facades\Facade该类,也没有实现 getFacadeAccessor方法,这意味着,令人困惑的是,它并不是真正的外观。

有人知道为什么吗?即是否有一个令人信服的框架原因,为什么 Facade 命名空间中的这个类没有被实现为一个实际的 Laravel 外观?

4

0 回答 0