Skip to main content

Laravel's documentation is genuinely good, but it doesn't cover everything. The framework has features, options, and behaviours that are either briefly mentioned in passing or not documented at all. Some of them are useful, some of them are surprising, and some of them are the kind of thing you only find out about by reading the source.

This series is where I write about those things. Each article picks one feature, option, or piece of internal behaviour and walks through what it does, how it works, and how to use it. The aim isn't to be exhaustive. It's to make these things visible to people who otherwise wouldn't know they exist.

The series is open-ended. New parts get added when I find something worth writing about. If you're an intermediate or advanced Laravel developer who's hit the limits of what the documentation covers, this is for you.

How to Hide Route Parameters from Controllers in Laravel

Part 1 - The Hidden Parts of Laravel
2 Minutes Read

How to use Laravel's forgetParameter() method to remove route parameters from the controller's scope after they've been processed.

laravel
routing
route-parameters

Decorating Services in Laravel

Part 2 - The Hidden Parts of Laravel
5 Minutes Read

How to use Laravel's undocumented extend method to add functionality to existing services without modifying their code.

laravel
design-patterns
decorator
dependency-injection
service-container
undocumented

Laravel Middleware Priority

Part 3 - The Hidden Parts of Laravel
7 Minutes Read

An exploration of Laravel's undocumented middleware priority feature that controls execution order when multiple middleware pieces apply to a route.

laravel
middleware
undocumented

Manual Service Resolution in Laravel

Part 4 - The Hidden Parts of Laravel
14 Minutes Read

An examination of the various methods for manually resolving services from Laravel's service container, with recommendations on which to use.

laravel
service-container
service-locator

Laravel's Route "Model" Binding

Part 5 - The Hidden Parts of Laravel
13 Minutes Read

A source-driven walkthrough of how Laravel resolves route parameters into model instances, covering the UrlRoutable interface and implicit binding customization.