2 Les Bases de Laravel 11 : Routage

AI Bot
Par AI Bot ·

Chargement du lecteur de synthèse vocale...

Introduction

Le routage est un aspect fondamental de Laravel, permettant aux developpeurs de definir des chemins URL et de les associer a des actions specifiques dans leurs applications. Cet article couvre les bases du routage dans Laravel 11, y compris la definition des routes, l'utilisation des parametres de route, les middleware, et plus encore.

Routage de base

Les routes Laravel les plus simples acceptent une URI et une closure, fournissant un moyen direct de definir les routes et leur comportement sans fichiers de configuration compliques :

use Illuminate\Support\Facades\Route;
 
Route::get('/greeting', function () {
    return 'Hello World';
});

Les fichiers de routes par defaut

Toutes les routes Laravel sont definies dans vos fichiers de routes, situes dans le repertoire routes. Ces fichiers sont automatiquement charges par Laravel en fonction de la configuration dans votre fichier bootstrap/app.php. Le fichier routes/web.php definit les routes pour votre interface web, qui sont assignees au groupe de middleware web fournissant des fonctionnalites comme l'etat de session et la protection CSRF.

use App\Http\Controllers\UserController;
 
Route::get('/user', [UserController::class, 'index']);

Parametres de route

Les routes Laravel peuvent accepter des parametres, les rendant dynamiques. Par exemple, vous pouvez capturer l'ID d'un utilisateur depuis l'URL :

Route::get('/user/{id}', function ($id) {
    return 'User '.$id;
});

Parametres optionnels

Parfois, vous pouvez avoir besoin de specifier un parametre de route qui peut ne pas toujours etre present dans l'URI. Utilisez un ? apres le nom du parametre et fournissez une valeur par defaut :

Route::get('/user/{name?}', function ($name = 'John') {
    return $name;
});

Contraintes d'expression reguliere

Vous pouvez contraindre le format de vos parametres de route en utilisant la methode where :

Route::get('/user/{id}', function ($id) {
    // ...
})->where('id', '[0-9]+');

Routes nommees

Les routes nommees fournissent un moyen pratique de generer des URLs ou des redirections pour des routes specifiques. Assignez un nom a une route en utilisant la methode name :

Route::get('/user/profile', function () {
    // ...
})->name('profile');

Generez des URLs ou des redirections en utilisant le nom de la route :

$url = route('profile');
return redirect()->route('profile');

Middleware

Les middleware vous permettent de filtrer les requetes HTTP entrant dans votre application. Creez un middleware en utilisant la commande Artisan :

php artisan make:middleware CheckAge

Definissez la logique du middleware dans app/Http/Middleware/CheckAge.php :

public function handle($request, Closure $next)
{
    if ($request->age <= 200) {
        return redirect('home');
    }
 
    return $next($request);
}

Assignez le middleware aux routes dans routes/web.php :

Route::get('/profile', function () {
    // ...
})->middleware('CheckAge');

Groupes de routes

Les groupes de routes vous permettent de partager des attributs de route entre un grand nombre de routes sans avoir a definir ces attributs sur chaque route individuelle :

Route::middleware(['first', 'second'])->group(function () {
    Route::get('/', function () {
        // Utilise le middleware first & second...
    });
    Route::get('/user/profile', function () {
        // Utilise le middleware first & second...
    });
});

Conclusion

Comprendre les bases du routage dans Laravel 11 est crucial pour construire des applications robustes. Ce guide a couvert les aspects fondamentaux, y compris la definition des routes, l'utilisation des parametres et des middleware. Pour plus d'informations, consultez la documentation officielle de Laravel.

Explorez davantage les puissantes fonctionnalites de routage de Laravel 11 dans la documentation officielle.

FonctionnaliteDescription
Routage de baseDefinir des routes simples avec une URI et une closure
Parametres de routeCapturer des valeurs dynamiques depuis l'URI
MiddlewareFiltrer les requetes HTTP entrant dans votre application

References


Vous voulez lire plus de tutoriels? Découvrez notre dernier tutoriel sur Comment Configurer Plusieurs Agents OpenClaw sur Telegram (Étape par Étape).

Discutez de votre projet avec nous

Nous sommes ici pour vous aider avec vos besoins en développement Web. Planifiez un appel pour discuter de votre projet et comment nous pouvons vous aider.

Trouvons les meilleures solutions pour vos besoins.

Articles connexes

8 Les Bases de Laravel 11 : Vues

Apprenez les bases de la gestion des vues dans Laravel 11. Ce tutoriel couvre la creation, le rendu et la gestion des vues en utilisant les templates Blade et plus encore.

15 min read·