Facades為應(yīng)用程序服務(wù)容器中可用的類提供 靜態(tài) 接口。Laravel 外墻 作為 靜態(tài)代理 在服務(wù)容器底層類,提供了一個(gè)簡潔,傳神語法的利益,同時(shí)保持比傳統(tǒng)的靜態(tài)方法更可測(cè)試性和靈活性。
如何創(chuàng)建Facade
以下是在Laravel創(chuàng)建Facade的步驟 -
- 第1步 - 創(chuàng)建PHP類文件。
- 第2步 - 將該類綁定到服務(wù)提供者。
- 第3步 - 將該ServiceProvider注冊(cè)到
Config \ app.php作為提供者。
- 第4步 - 創(chuàng)建此類延伸到的類
lluminate的\ Support \外立面\門面。
- 第5步 - 將 第4 點(diǎn)注冊(cè)到Config \ app.php作為別名。
門面類參考
Laravel附帶許多外墻。下表顯示了內(nèi)置的Facade類參考 -
正面 | 類 | 服務(wù)容器綁定 |
---|---|---|
應(yīng)用 | 照亮\基金會(huì)\應(yīng)用 | 應(yīng)用 |
工匠 | 照亮\合同\控制臺(tái)\內(nèi)核 | 工匠 |
驗(yàn)證 | 照亮\驗(yàn)證\ AuthManager | AUTH |
身份驗(yàn)證(實(shí)例) | 照亮\驗(yàn)證\衛(wèi)隊(duì) | |
刀 | 照亮\查看\編譯\ BladeCompiler | blade.compiler |
總線 | 照亮\ \合同公交\調(diào)度 | |
高速緩存 | 照亮\緩存\庫 | 高速緩存 |
配置 | 照亮\ CONFIG \庫 | 配置 |
曲奇餅 | 照亮\餅干\ CookieJar | 曲奇餅 |
地穴 | 照亮\加密\加密器 | 加密 |
D B | 照亮\數(shù)據(jù)庫\的DatabaseManager | D b |
DB(實(shí)例) | 照亮\數(shù)據(jù)庫\連接 | |
事件 | 照亮\活動(dòng)\調(diào)度 | 事件 |
文件 | 照亮\文件系統(tǒng)\文件系統(tǒng) | 檔 |
門 | 照亮\合同\身份驗(yàn)證\訪問\門 | |
哈希 | 照亮\合同\散列\(zhòng)散列器 | 哈希 |
輸入 | 照亮\ HTTP \請(qǐng)求 | 請(qǐng)求 |
郎 | 照亮\翻譯\翻譯 | 翻譯者 |
日志 | 照亮\登錄\作家 | 日志 |
郵件 | 照亮\郵件\梅勒 | 信封 |
密碼 | 照亮\驗(yàn)證\密碼\ PasswordBroker | auth.password |
隊(duì)列 | 照亮\隊(duì)列\(zhòng)的QueueManager | 隊(duì)列 |
隊(duì)列(實(shí)例) | 照亮\隊(duì)列\(zhòng) QueueInterface | |
隊(duì)列(基類) | 照亮\隊(duì)列\(zhòng)隊(duì)列 | |
重定向 | 照明\路由\重定向 | 重定向 |
Redis的 | 照亮\ Redis的\數(shù)據(jù)庫 | Redis的 |
請(qǐng)求 | 照亮\ HTTP \請(qǐng)求 | 請(qǐng)求 |
響應(yīng) | 照亮\合同\路由\ ResponseFactory | |
路線 | 照明\路由\路由器 | 路由器 |
架構(gòu) | 照亮\數(shù)據(jù)庫\架構(gòu)\藍(lán)圖 | |
會(huì)議 | 照亮\會(huì)議\ SessionManager | 會(huì)議 |
會(huì)話(實(shí)例) | 照亮\會(huì)議\商店 | |
存儲(chǔ) | 照亮\合同\文件系統(tǒng)\廠 | 文件系統(tǒng) |
網(wǎng)址 | 照明\路由\ UrlGenerator | 網(wǎng)址 |
驗(yàn)證器 | 照亮\驗(yàn)證\廠 | 驗(yàn)證器 |
驗(yàn)證器(實(shí)例) | 照亮\驗(yàn)證\驗(yàn)證 | |
視圖 | 照亮\查看\廠 | 視圖 |
查看(實(shí)例) | 照亮\查看\查看 |
例
第1步 - 通過執(zhí)行以下命令創(chuàng)建名為 TestFacadesServiceProvider 的服務(wù)提供者。
php artisan make:provider TestFacadesServiceProvider
第2步 - 成功執(zhí)行后,您將收到以下輸出 -
第3步 - 在 App / Test中 創(chuàng)建一個(gè)名為 TestFacades.php 的類。 **
應(yīng)用/測(cè)試/ TestFacades.php
<?php namespace App\Test; class TestFacades{ public function testingFacades(){ echo "Testing the Facades in Laravel."; } } ?>
第4步 - 在 “App / Test / Facades” 創(chuàng)建一個(gè)名為 “TestFacades.php” 的Facade類。 **
應(yīng)用/測(cè)試/幕墻/ 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 創(chuàng)建一個(gè)名為 TestFacadesServiceProviders.php 的Facade類 。
應(yīng)用/供應(yīng)商/ 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中 添加一個(gè)服務(wù)提供者,如下圖所示。
配置/ app.php
第7步 - 在文件 config / app.php中 添加一個(gè)別名,如下圖所示。
配置/ app.php
第8步 - 在 app / Http / routes.php中 添加以下行 。
應(yīng)用程序/ HTTP / routes.php文件
Route::get('/facadeex', function(){ return TestFacades::testingFacades(); });
第9步 - 訪問以下URL以測(cè)試Facade。
http://localhost:8000/facadeex
第10步 - 訪問URL后,您將收到以下輸出 -
- CodeIgniter 應(yīng)用程序架構(gòu)
- CodeIgniter Cookie管理
- CakePHP 路由
- CakePHP 控制器
- FuelPHP 教程
- FuelPHP 請(qǐng)求和響應(yīng)
- FuelPHP 模型和數(shù)據(jù)庫
- FuelPHP 高級(jí)表單編程
- FuelPHP 文件上傳
- FuelPHP Ajax
- FuelPHP 模塊
- Laravel 教程
- Laravel 中間件
- Laravel 控制器
- Laravel視圖
- Laravel 重定向
- Laravel 使用數(shù)據(jù)庫
- Laravel 錯(cuò)誤和日志
- Laravel 本地化
- Laravel 錯(cuò)誤處理