Maison > cadre php > Laravel > le corps du texte

Comment implémenter le routage Laravel

王林
Libérer: 2023-05-20 18:55:38
original
726 Les gens l'ont consulté

Laravel est un framework PHP populaire qui fournit un système de routage facile à utiliser. Le système de routage de Laravel vous permet de définir des méthodes pour différents URI et requêtes HTTP. Dans cet article, nous allons approfondir la mise en œuvre du routage dans Laravel.

  1. Routage de base

La définition de l'itinéraire de base de Laravel est très simple. Nous pouvons utiliser les méthodes get, post, put, delete et autres de la classe Route pour définir des itinéraires.

Par exemple, nous pouvons définir une route GET de base :

Route::get('/hello', function () {
    return 'Hello, Laravel!';
});
Copier après la connexion

La route ci-dessus définit une route de requête GET avec l'URI /hello, renvoyant la chaîne "Bonjour, Laravel !" .

  1. Paramètres de routage

Dans les applications réelles, les itinéraires peuvent avoir des paramètres. Le système de routage de Laravel vous permet de définir ces paramètres. Vous pouvez définir des paramètres dans une route à l'aide de la syntaxe {param}, où param est le nom du paramètre.

Par exemple, nous pouvons définir une route qui accepte des paramètres :

Route::get('/user/{id}', function ($id) {
    return 'User ID: ' . $id;
});
Copier après la connexion

La route ci-dessus définit une route de requête GET qui accepte le paramètre id. Dans la fonction de rappel, nous pouvons utiliser la variable $id pour obtenir les paramètres passés et les renvoyer au navigateur.

  1. Routage des paramètres facultatifs

Le système de routage Laravel vous permet de définir des paramètres de routage optionnels. Ajoutez simplement ? après le nom du paramètre pour marquer le paramètre comme facultatif.

Par exemple, nous pouvons définir une route avec des paramètres facultatifs :

Route::get('/user/{id}/{name?}', function ($id, $name = null) {
    if ($name) {
        return 'User ID: ' . $id . ', Name: ' . $name;
    } else {
        return 'User ID: ' . $id;
    }
});
Copier après la connexion

La route ci-dessus définit une route de requête GET qui accepte les paramètres d'identifiant et de nom facultatifs. Dans la fonction de rappel, nous vérifions si $name existe. S'il existe, nous renvoyons l'identifiant et le nom ensemble. Sinon, seul le paramètre id est renvoyé.

  1. Contraintes d'expression régulière

Parfois, vous devrez peut-être appliquer des contraintes d'expression régulière pour acheminer les paramètres afin de vous assurer qu'ils respectent certaines règles. Dans Laravel, vous pouvez utiliser des expressions régulières pour ce faire.

Par exemple, nous pouvons définir une route avec des contraintes d'expression régulière :

Route::get('/user/{id}/{name}', function ($id, $name) {
    return 'User ID: ' . $id . ', Name: ' . $name;
})->where(['id' => '[0-9]+', 'name' => '[a-zA-Z]+']);
Copier après la connexion

La route ci-dessus définit une route de requête GET avec des paramètres id et name. Dans la fonction de rappel, nous renvoyons ces deux paramètres ensemble. Lors de la définition de l'itinéraire, nous utilisons la méthode Where pour spécifier que le paramètre id doit correspondre à [0-9]+expression régulière et que le paramètre name doit correspondre à [a-zA-Z]+expression régulière.

  1. Routes nommées

Dans Laravel, vous pouvez définir des noms pour les routes, ce qui facilite la définition des URL.

Par exemple, nous pouvons définir une route nommée :

Route::get('/user/profile', function () {
    return 'User Profile';
})->name('profile');
Copier après la connexion

La route ci-dessus définit une route de requête GET et la nomme profil. Lors de la définition d'un itinéraire, nous spécifions le nom à l'aide de la méthode name. Désormais, nous pouvons utiliser ce nom dans le code pour générer des URL.

  1. URL Generator

Le générateur d'URL de Laravel vous permet de générer facilement l'URL de votre application. Vous pouvez utiliser la fonction route pour générer l'URL d'un itinéraire.

Par exemple, nous pouvons utiliser la route nommée ci-dessus pour générer une URL :

$url = route('profile');
Copier après la connexion

Le code ci-dessus générera une URL pointant vers /profile.

  1. Routage du contrôleur

Dans Laravel, vous pouvez également pointer des routes vers des méthodes de contrôleur au lieu de spécifier directement des fonctions de rappel de fermeture. De cette façon, vous pouvez gérer les requêtes de manière centralisée dans votre contrôleur.

Par exemple, nous pouvons définir une route de contrôleur :

Route::get('/user/{id}', 'UserController@show');
Copier après la connexion

La route ci-dessus définit une route de requête GET, qui pointe le paramètre /id vers la méthode show du contrôleur UserController .

  1. Routage RESTful

Le routage RESTful vous permet de définir des points de terminaison d'API RESTful pour votre application. Dans Laravel, vous pouvez définir des routes RESTful à l'aide de la méthode ressource de la classe Route.

Par exemple, nous pouvons définir une route RESTful :

Route::resource('photos', 'PhotoController');
Copier après la connexion

Le code ci-dessus nous fournira la route RESTful par défaut, y compris indexer, créer, stocker, afficher, modifier, méthode de mise à jour et de destruction. Ces méthodes seront utilisées pour gérer les requêtes dans le contrôleur PhotoController.

Résumé

Cet article couvre les bases du routage Laravel. Nous avons découvert le routage de base, les paramètres de routage, les paramètres facultatifs, les contraintes d'expression régulière, le routage nommé, les générateurs d'URL, le routage de contrôleur et le routage RESTful. Le système de routage de Laravel est très puissant et gère facilement diverses requêtes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!