在哪里可以使用Laravel Facade别名?
我已经构建了一个带有定制外观的Laravel5.4应用程序,在哪里可以使用Laravel Facade别名?,laravel,facade,laravel-facade,Laravel,Facade,Laravel Facade,我已经构建了一个带有定制外观的Laravel5.4应用程序,App\Facades\Repo。Repo facade代理一个RepositoryFactory类。在我的应用程序配置中,我有一个别名Repo,它指向Repo facade。我使用它通过调用获取存储库,比如Repo::get('User') 如果我在控制器或路由文件中,这可以正常工作。但是,在应用程序的其他部分中,我不能使用Repo别名。解释器在当前命名空间中查找Repo类,并出错。这提出了两个问题: 哪些类知道facade别名?它
App\Facades\Repo
。Repo facade代理一个RepositoryFactory
类。在我的应用程序配置中,我有一个别名Repo
,它指向Repo facade。我使用它通过调用获取存储库,比如Repo::get('User')
如果我在控制器或路由文件中,这可以正常工作。但是,在应用程序的其他部分中,我不能使用Repo
别名。解释器在当前命名空间中查找Repo类,并出错。这提出了两个问题:
- 哪些类知道facade别名?它们的定义是什么
- 在不知道facade别名的类中,我是否应该继续导入facade类本身?或者这是一种代码气味
\Repo::get(“用户”)
在命名空间的上下文中,比如在routes.php
、配置文件或视图中,facade可以直接工作
但这与PHP的工作方式有关,而与Laravel本身无关