是否可以编写一个不依赖于静态或外观行为的Laravel应用程序?

是否可以编写一个不依赖于静态或外观行为的Laravel应用程序?,laravel,laravel-4,Laravel,Laravel 4,我第一次启动了一个全新的Laravel 4应用程序,我注意到的一件事是,当我遵循快速入门指南时,有一些神奇的事情正在发生。它建议这样设置路线: 路由::获取(…) 但是当我在\illumb\Routing\Route类中找到静态get函数时,它不在那里。它似乎实际上在调用illumb\Routing\Router。我还没有深入了解它是如何在路由器类中调用这个的 但是,当我查看Router类的get函数时,它不是静态的。在堆栈跟踪之后,它似乎正在遍历一些管理类的单例实例的Facade类,然后使用\

我第一次启动了一个全新的Laravel 4应用程序,我注意到的一件事是,当我遵循快速入门指南时,有一些神奇的事情正在发生。它建议这样设置路线:

路由::获取(…)

但是当我在
\illumb\Routing\Route
类中找到静态
get
函数时,它不在那里。它似乎实际上在调用
illumb\Routing\Router
。我还没有深入了解它是如何在
路由器
类中调用这个的

但是,当我查看
Router
类的
get
函数时,它不是静态的。在堆栈跟踪之后,它似乎正在遍历一些管理类的单例实例的
Facade
类,然后使用
\u callStatic
调用实例方法


是否可以在不利用这些快捷方式的情况下编写代码?我的IDE不能很好地遵循这些东西,所以我丢失了自动完成和函数细节。我试图手动实例化一个
路由器
实例,并动态调用
get
函数,但它似乎没有连接到应用程序中,因此被忽略。我还想明确地包含Laravel名称空间,但它似乎会自动将
路由
转换为
\lighting\Routing\Router
,我发现这很难理解。

Laravel使用Facade模式是为了方便。你确实可以不用facades来编写你的应用程序,但这会有点乏味。facades只访问应用程序容器上的项目,因此,如果您查看各种服务提供商,您可以获取所需的内容。

为了方便起见,Laravel使用Facade模式。你确实可以不用facades来编写你的应用程序,但这会有点乏味。facades只访问应用程序容器上的项目,因此,如果您查看各种服务提供商,您可以获取所需内容。

是的,可以不使用facades,但不建议使用facades


取而代之的是,考虑使用IDE帮助器,例如

是的,不可能使用外观,但不推荐使用。


取而代之的是,考虑使用IDE帮助器,例如

这太棒了…希望他们能在核心中添加类似的东西,因为没有它,我就不会觉得写有效代码很舒服。这太棒了。。。希望他们能在核心中添加类似的内容,因为如果没有它,我就不会觉得编写有效代码很舒服。