LaravelApril 5, 2026
Laravel Middleware: Complete Guide with Examples
A comprehensive guide to Laravel middleware for filtering HTTP requests.
Middleware provides a convenient mechanism for filtering HTTP requests entering your application. Let’s explore everything about Laravel middleware.
Creating Middleware
bash
php artisan make:middleware EnsureUserIsAdmin
php
class EnsureUserIsAdmin
{
public function handle(Request $request, Closure $next): Response
{
if (! $request->user()?->isAdmin()) {
return redirect('home');
}
return $next($request);
}
}
Before & After Middleware
Before Middleware
php
public function handle($request, Closure $next)
{
// Perform action before request is handled
return $next($request);
}
After Middleware
php
public function handle($request, Closure $next)
{
$response = $next($request);
// Perform action after request is handled
return $response;
}
Middleware Groups
Group middleware for web and API routes in your bootstrap/app.php:
php
->withMiddleware(function (Middleware $middleware) {
$middleware->web(append: [
MyCustomMiddleware::class,
]);
})