facade 使用

Facade(门面)的使用:
创建Facade: 首先创建facade类文件:
someFacade.php(建议在App文件夹下创建Facade文件夹,用来保存我们新建的Facade类文件)

facade 使用
以下以 someFacade 为列:
创建 someFacaed.php 继承基类 Illuminate\Support\Facades\Facade
1.实现方法getFacadeAccessor 返回对应服务容器绑定的名称;
2.基类中的 __callStatic 实现了方法的静态化调用;

facade 使用
到这里,上面提到的实现方法“getFacadeAccessor”,返回对应服务容器绑定的名称,那接下来就去创建对应的服务提供者(Provider),或者说绑定对应的实例。
这里以新建Provider为列:
D:\www\laravel7>php artisan make:provider SomeFacadeServiceProvider
Provider created successfully.
facade 使用
在Provider中的register方法绑定服务(实例):
facade 使用
服务绑定完成,需要在config/app.php配置文件中注册服务提供者(注册Provider,框架得以加载Provider)
facade 使用

现在在Some.php中随意写上一些测试方法:
facade 使用
可以看到,在Some.php中是没有任何静态方法的(static),现在创建 TestController 测试SomeFacade是否能够正常使用:
facade 使用
到此为止,Facade的使用就全部结束了。

更多参考:Facades《Laravel 7 中文文档》

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!