生命週期
概觀
Laravel 發出請求(Request)的生命週期相當簡單,當使用者請求存取你的應用程式,會將它費配到適當的 路由 (Route) 或 控制器(Controller),然後從該路由送回訊息給瀏覽器顯示在螢幕上,有時候你可能會希望在存取路由 "之前 (before)" 或 "之後 (after)" 做一些處理,有幾個機會點可以做到這樣的需求,其中兩個是 "start" 檔案 和 應用程式事件。
起始檔案
你應用程式的 start 檔案室存放在 app/start
,預設引用三個檔案到你的應用程式: global.php
、 local.php
及 artisan.php
,更多的 artisan.php
資訊請參考 開發:註冊指令 的說明文件。
global.php
的啟動檔案包含一些預設基本的元素,像是註冊 錯誤及記錄 和引入你的 app/filters.php
檔案,不管怎樣,你還是可以隨意的加入任何東西在這個檔案,這樣在 每次 的請求,不論執行環境為何,都會自動引用到你的應用程式,而 local.php
的檔案則是當執行環境為 local
時才會被引用進去,對於更多的環境相關設定,請參考 設定 說明文件。
當然,如果你有除了 local
以外的其他執行環境,你可以建立這些環境的啟動檔案,他們將會在該環境中自動的被執行
應用事件
註冊之前,您也可以做前期和後期的請求處理,之後,關閉,完成後,關閉應用程序事件:
你可以藉由註冊 before
、 after
、 close
、 finish
和 shutdown
做應用程式的"前期"和"後期"的請求處理:
Registering Application Events
App::before(function()
{
//
});
App::after(function($request, $response)
{
//
});
這些事件的傾聽,將會在每次對應用程式請求(Request)的之前(before)
及 之後(after)
執行。