下面由Laravel框架教程專欄給大家介紹laravel門面契約(facades)與契約(contracts),希望對需要的朋友有所幫助!
1. 如何定義 Laravel 的門面?
所有的門面都定義在 Illuminate\Support\Facades 命名空間當中。
2. 契約(facades)的理解
Facades(讀音:/fəˈsäd/ )為應用程式的 服務容器
中可用的類別提供了一個「靜態」介面。你不必 use
一大串的命名空間,也不用實例化對象,就能存取對象的具體方法。
同樣 facades 需要 註冊與 啟動的。
laravel 很喜歡,註冊(register) 啟動(bootstrap)
Facade 的啟動引導是在Illuminate\Foundation\Bootstrap\RegisterFacades
中註冊的。
/** * Prepend the load method to the auto-loader stack. * * @return void */ protected function register() { if (! $this->registered) { spl_autoload_register([$this, 'load'], true, true); $this->registered = true; } }
具體實作邏輯大家可以查看原文:Laravel Facade 的載入流程及原則
3. 解釋Laravel 中契約的概念
以上是laravel門面契約(facades)與契約(contracts)的詳細內容。更多資訊請關注PHP中文網其他相關文章!