Laravel 是目前 PHP 熱門的框架之一;它一定是好用,才會受到大家關注;那對開發者而言,什麼才是好用呢?具備「快速驗證」、「簡潔的程式碼」、「豐富的套件生態系」、「客製化容易」等特性的語言或框架,開發者肯定都會躍躍欲試。未來三十天,筆者將會試著分析 Laravel 原始碼,讓讀者了解什麼是好的架構,並在未來開發設計有好的方向可以參考。
先回顧一下類別圖,等等的說明搭著圖看會更好理解: 昨天有提到: Laravel 所實作的五個 handler 不僅可以用在 SessionManager 上...
今天總算來到了重頭戲--Routing,也就是負責決定什麼樣的網址要傳到指定的 controller。 Routing 的類別又比 Session 來得更多,而...
一樣,先從類別圖開始。這次因為相關的類別太多,所以會先以 Router 設定 Controller 以及 Request 如何對應到正確的 Controller...
昨天在最後面,可以知道一件很重要的資訊:Router 裡面所指的 action 原形,其實是 array。以昨天的例子來說: $this->app->...
今天要接著來看,是如何設定各式各樣的 route 了。先來看 get() 與 post() 的原始碼: public function get($uri, $a...
Route 帶有單一個路由的資訊。從它在 Router 如何被初始化的程式碼,可以知道它有哪些基本的資訊: protected function newRout...
回過頭來,我們來看 Http Kernel 的這段程式碼: return (new Pipeline($this->app)) -...
繼續昨天的 runRoute(),直接來看原始碼: protected function runRoute(Request $request, Route $r...
原本預定要看 middleware,但因為發生忘了帶充電器的蠢事,沒辦法用自己習慣的筆電,所以換講比較簡單的 Marcoable。 如何擴展既有類別的功能 先來...
Middleware 是由 Pipeline 實作的,而程式裡出現 Pipeline 有兩次。一次是 Global middleware,也就是 Http Ke...