Laravel Facades

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í)行后,您將收到以下輸出 -

FacadesServiceProvider

第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

服務(wù)提供者

第7步 - 在文件 config / app.php中 添加一個(gè)別名,如下圖所示。

配置/ app.php

別號(hào)

第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后,您將收到以下輸出 -

測(cè)試門面

下一節(jié):Laravel 契約

Laravel 教程


相關(guān)文章
亚洲国产精品第一区二区,久久免费视频77,99V久久综合狠狠综合久久,国产免费久久九九免费视频