Laravel类别名和外观与实际文件名不匹配

时间:2013-08-20 08:04:47

标签: laravel laravel-4 facade

我正在尝试查找Redirect类的路径位置。其return 'redirect'方法中的外观getFacadeAccessor

<?php namespace Illuminate\Support\Facades;

class Redirect extends Facade {

/**
 * Get the registered name of the component.
 *
 * @return string
 */
protected static function getFacadeAccessor() { return 'redirect'; }

}

但是我发现负责此类定义的真实文件是“Redirector.php”。我无法找到“Redirect”到“Redirector”类的别名,所以我想知道Laravel如何知道Redirector类实际上是容器的Redirect组件?

1 个答案:

答案 0 :(得分:1)

查看/vendor/laravel/framework/src/Illuminate/Routing/RoutingServiceProvider.php内部。它包含一个类RoutingServiceProvider,其方法为registerRedirector()

这是将新的重定向器实例注入$ app ['redirect']的地方。然后可以通过您在问题中提到的重定向外观访问它。