- Laravel 教程
- Laravel - 主页
- Laravel - 概述
- Laravel - 安装
- Laravel - 应用程序结构
- Laravel - 配置
- Laravel - 路由
- Laravel - 中间件
- Laravel - 命名空间
- Laravel - 控制器
- Laravel - 请求
- Laravel-Cookie
- Laravel - 响应
- Laravel - 视图
- Laravel - 刀片模板
- Laravel - 重定向
- Laravel - 使用数据库
- Laravel - 错误和日志记录
- Laravel - 表单
- Laravel - 本地化
- Laravel - 会话
- Laravel - 验证
- Laravel - 文件上传
- Laravel - 发送电子邮件
- Laravel - AJAX
- Laravel - 错误处理
- Laravel - 事件处理
- Laravel - 外观
- Laravel - 合约
- Laravel - CSRF 保护
- Laravel - 身份验证
- Laravel - 授权
- Laravel - Artisan 控制台
- Laravel - 加密
- Laravel - 哈希
- 了解发布流程
- Laravel - 访客用户门
- Laravel - Artisan 命令
- Laravel - 分页自定义
- Laravel - 转储服务器
- Laravel - 操作 URL
- Laravel 有用资源
- Laravel - 快速指南
- Laravel - 有用的资源
- Laravel - 讨论
Laravel - 外观
外观为应用程序服务容器中可用的类提供静态接口。Laravel外观充当服务容器中底层类的静态代理,提供简洁、富有表现力的语法的优点,同时保持比传统静态方法更高的可测试性和灵活性。
如何创建门面
以下是在 Laravel 中创建 Facade 的步骤 -
步骤 1 - 创建 PHP 类文件。
步骤 2 - 将该类绑定到服务提供者。
步骤 3 - 将该服务提供商注册到
Config\app.php 作为提供者。
步骤 4 - 创建该类扩展至的类
照亮\支持\立面\立面。
步骤 5 - 将点 4 注册到 Config\app.php 作为别名。
外观类参考
Laravel 附带了许多 Facade。下表显示了内置的 Facade 类引用 -
正面 | 班级 | 服务容器绑定 |
---|---|---|
应用程序 | 照明\基础\应用 | 应用程序 |
工匠 | 照亮\合同\控制台\内核 | 工匠 |
授权 | 照亮\Auth\AuthManager | 授权 |
身份验证(实例) | 照亮\验证\防护 | |
刀刃 | Illuminate\View\Compilers\BladeCompiler | Blade.编译器 |
公共汽车 | 照亮\合同\巴士\调度员 | |
缓存 | 照亮\缓存\存储库 | 缓存 |
配置 | 照亮\配置\存储库 | 配置 |
曲奇饼 | 照亮\Cookie\CookieJar | 曲奇饼 |
地穴 | 照明\加密\加密器 | 加密器 |
D B | 照亮\数据库\DatabaseManager | D b |
数据库(实例) | 照亮\数据库\连接 | |
事件 | 照亮\事件\调度程序 | 事件 |
文件 | 照亮\文件系统\文件系统 | 文件 |
门 | 照亮\合同\身份验证\访问\门 | |
哈希值 | Illuminate\Contracts\Hashing\Hasher | 散列 |
输入 | 照亮\Http\请求 | 要求 |
郎 | 照明\翻译\翻译器 | 翻译者 |
日志 | 照亮\日志\写入器 | 日志 |
邮件 | 照亮\邮件\邮件程序 | 邮寄者 |
密码 | 照亮\Auth\密码\PasswordBroker | 授权密码 |
队列 | 照亮\队列\队列管理器 | 队列 |
队列(实例) | 照亮\队列\队列接口 | |
队列(基类) | 照亮\队列\队列 | |
重定向 | 照亮\路由\重定向器 | 重定向 |
雷迪斯 | 照亮\Redis\数据库 | 雷迪斯 |
要求 | 照亮\Http\请求 | 要求 |
回复 | Illuminate\Contracts\Routing\ResponseFactory | |
路线 | 照亮\路由\路由器 | 路由器 |
模式 | 照亮\数据库\模式\蓝图 | |
会议 | 照亮\会话\SessionManager | 会议 |
会话(实例) | 照亮\会话\存储 | |
贮存 | 照亮\合同\文件系统\工厂 | 文件系统 |
网址 | 照亮\路由\UrlGenerator | 网址 |
验证器 | 照明\验证\工厂 | 验证器 |
验证器(实例) | 照明\验证\验证器 | |
看法 | 照亮\视图\工厂 | 看法 |
视图(实例) | 照明\视图\视图 |
例子
步骤 1 -通过执行以下命令创建一个名为TestFacadesServiceProvider 的服务提供者。
php artisan make:provider TestFacadesServiceProvider
步骤 2 - 成功执行后,您将收到以下输出 -
步骤 3 -在App/Test中创建一个名为TestFacades.php的类。
应用程序/测试/TestFacades.php
<?php namespace App\Test; class TestFacades{ public function testingFacades() { echo "Testing the Facades in Laravel."; } } ?>
步骤 4 -在“App/Test/Facades”创建一个名为“TestFacades.php”的 Facade 类。
应用程序/测试/Facades/TestFacades.php
<?php namespace app\Test\Facades; use Illuminate\Support\Facades\Facade; class TestFacades extends Facade { protected static function getFacadeAccessor() { return 'test'; } }
步骤 5 -在App/Test/Facades 中创建一个名为TestFacadesServiceProviders.php的 Facade 类。
应用程序/提供商/TestFacadesServiceProviders.php
<?php namespace App\Providers; use App; use Illuminate\Support\ServiceProvider; class TestFacadesServiceProvider extends ServiceProvider { public function boot() { // } public function register() { App::bind('test',function() { return new \App\Test\TestFacades; }); } }
步骤 6 - 在文件config/app.php中添加服务提供者,如下图所示。
配置/应用程序.php
步骤 7 - 在文件config/app.php中添加别名,如下图所示。
配置/应用程序.php
步骤 8 - 在app/Http/routes.php中添加以下行。
应用程序/Http/routes.php
Route::get('/facadeex', function() { return TestFacades::testingFacades(); });
步骤 9 - 访问以下 URL 来测试外观。
http://localhost:8000/facadeex
步骤 10 - 访问 URL 后,您将收到以下输出 -