Maison  >  Article  >  cadre php  >  Que fait le routage Laravel ?

Que fait le routage Laravel ?

WBOY
WBOYoriginal
2022-04-12 15:24:202303parcourir

Dans Laravel, le rôle du routage est de transmettre les différentes demandes d'URL de l'utilisateur au programme correspondant pour traitement ; le routage est le moyen pour le monde extérieur d'accéder aux applications Laravel. Le routage définit la manière spécifique dont les applications Laravel fournissent des services au système Laravel. monde extérieur. laravel Les routes sont définies dans le dossier routes.

Que fait le routage Laravel ?

L'environnement d'exploitation de cet article : système Windows 10, Laravel version 6, ordinateur Dell G3.

Quel est le rôle du routage laravel

Le rôle du routage est de transmettre les différentes requêtes URL de l'utilisateur vers le programme correspondant pour traitement. Le routage de Laravel est défini dans le dossier routes. Quatre fichiers de routage sont fournis par défaut, parmi lesquels le. Fichier web.php Définit les requêtes de page de base.

Dans Laravel, le routage est le moyen permettant au monde extérieur d'accéder aux applications Laravel, ou le routage définit la manière spécifique dont les applications Laravel fournissent des services au monde extérieur. Routage soumettra la demande de l'utilisateur au contrôleur spécifié et à la méthode de traitement selon le plan pré-planifié.

Routage de base

Les requêtes de routage les plus basiques sont les requêtes get et post Laravel définit différentes méthodes de requête via les objets Route. Par exemple, définissez une requête get avec l'url 'req' et renvoyez la chaîne 'get réponse' :

Route::get('req',function (){undefined
return 'get response';
});

Lorsque je demande http://localhost/Laravel/laravel52/public/req dans la méthode get, le retour est le suivant suit :

Que fait le routage Laravel ?

De même, lors de la définition d'une requête de publication, utilisez Route::post(url,function(){});

Routage de requêtes multiples

Si vous souhaitez utiliser le même traitement pour plusieurs requêtes méthodes, vous pouvez utiliser match ou any :

Utilisez match pour faire correspondre la méthode de requête correspondante. Par exemple, lors d'une demande de req2 avec get ou post, la réponse de correspondance sera renvoyée :

Route::match(['get','post'],'req2',function (){undefined
return 'match response';
});

any correspondra à n'importe quelle méthode de requête. demander req3 dans n'importe quelle méthode renverra n'importe quelle réponse. :

Route::any('req3',function (){undefined
return 'any response';
});

Paramètres de la requête

Paramètres requis : lors de l'envoi d'une requête avec des paramètres, vous pouvez la recevoir dans l'itinéraire. Entourez les paramètres d'accolades et séparez-les par /, par exemple :

Route::get('req4/{name}/{age}', function ($name, $age) {undefined
return "I'm {$name},{$age} years old.";
});

Avec get Passez les paramètres lors de la demande, et le résultat est le suivant :

Que fait le routage Laravel ?

Paramètres facultatifs : Les paramètres ci-dessus sont obligatoires. Si un paramètre est manquant, une erreur sera signalée. un paramètre doit être facultatif, vous pouvez en ajouter un ? , et définir la valeur par défaut. Le paramètre par défaut doit être le dernier paramètre, sinon il ne peut pas être reconnu s'il est placé au milieu :

Route::get('req4/{name}/{age?}', function ($name, $age=0) {undefined
return "I'm {$name},{$age} years old.";
});

Vérification régulière : Les paramètres. dans la demande peut être vérifié via Where

Route::get('req4/{name}/{age?}', function ($name, $age=0) {undefined
return "I'm {$name},{$age} years old.";
})->where(['name'=>'[A-Za-z]+','age'=>'[0-9]+']);

Groupe de routage

Parfois, nos itinéraires peuvent avoir plusieurs niveaux. Par exemple, nous définissons un itinéraire de premier niveau vers la maison, qui contient un article sur les itinéraires de deuxième niveau, un commentaire, etc. nécessite de placer l'article et le commentaire dans le groupe d'accueil. Ajoutez le préfixe home:

Route::group(['prefix' => 'home'], function () {undefined
Route::get('article', function () {undefined
return 'home/article';
});
});

à l'article de route via le préfixe de clé de tableau, afin que la route soit accessible via home/article.

Nom de l'itinéraire

Parfois, vous devez donner un nom à un itinéraire. Vous devez utiliser la touche de tableau as pour spécifier le nom de l'itinéraire lors de la définition de l'itinéraire. Par exemple, si vous nommez le commentaire de la route home/comment, vous pouvez utiliser le commentaire du nom de la route lors de la génération d'URL et de redirections :

Route::get('home/comment',['as'=>'comment',function(){undefined
return route('comment'); //通过route函数生成comment对应的url
}]);

La sortie est http://localhost/Laravel/laravel52/public/home/comment

【 Recommandations associées :tutoriel vidéo Laravel

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!

Déclaration:
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