In his latest blog entry on the ThinkingPHP Blog, Felix Geisendörfer continues on with the series started here and shows that there's more to learn from the CakePHP source code.
In the previous post I was showing how to use the Dispatcher::dispatch() function. Now what's more interesting, is what it actually does and in what order.
He lists out the order of the process the Dispatcher follows:
- Build the $params array
- Find the base url
- Load/Include the requested Controller
- Possible Plugin Logic
- Executing the Admin Route
- Render a possible missingController error
- Action exists? Action private?
- Set Controller variables
- Load Components & Models
- Render possible missingAction/privateActione errors
- Invoke the controller
It seems like a long way to go to just get the request to the right Controller, but it all happens in the blink of an eye when the page request is made.
If you've enjoyed the look at the Dispatcher, let Felix know - especially if you'd like to see other parts covered.