Nom d'itinéraire
Le nom d'itinéraire permet au programme d'obtenir facilement des informations de routage. Après avoir obtenu ces informations, il peut rediriger ou effectuer d'autres opérations. Les commandes de routage sont implémentées via la méthode name. Ensuite, nommons une route :
Route::get('about', function () {})->name('index.about');
Après avoir nommé une route, vous pouvez obtenir l'URL de la route via la fonction d'assistance route.
$url = route('index.about'); echo $url; // http://localhost:8000/about
Si nous ne voulons pas la partie avant du nom de domaine, mais seulement le chemin arrière, alors nous pouvons le faire
$url = route('index.about', [], false); echo $url; // /about
Si vous définissez un itinéraire avec des paramètres, vous pouvez utiliser le paramètres comme fonction de route Le deuxième paramètre est passé dans
Route::get('news/{id}', 'IndexController@news')->name('home.news'); ... return redirect()->route('home.news', ['id' => 23]);
Le deuxième élément du tableau de paramètres dans la fonction de route peut automatiquement correspondre aux paramètres de routage si le deuxième élément du tableau de paramètres dans la fonction de route est supérieur aux paramètres. défini par l'itinéraire, il effectuera un épissage automatique pour générer une URL
echo route('home.news', ['id' => 23, 'page' => 3, 'page_num' => 20]); // http://localhost:8000/news/23?page=3&page_num=20
Regroupement d'itinéraires
Le rôle du regroupement d'itinéraires est lorsque le système a défini de nombreuses routes, mais certaines routes ont Si vous avez des points communs, tels que le même préfixe d'espace de noms ou le même préfixe de chemin, vous pouvez regrouper les routes qui ont des points communs dans une seule route, ce qui facilite la gestion et réduit le nombre de routes. de code, et le code a l'air bien. Plus élégant.
Préfixe d'itinéraire
Nous mettons les itinéraires avec le même préfixe dans un groupe. Ci-dessous se trouvent deux itinéraires avec le même préfixe :
Route::prefix('index')->get('a', function () { return 'a'; // 匹配/index/a }); Route::prefix('index')->get('b', function () { return 'b'; // 匹配/index/b });
Maintenant, nous les mettons dans un groupe
Route::prefix('index')->group(function () { Route::get('a', function () { return 'a'; // 匹配/index/a }); Route::get('b', function () { return 'b'; // 匹配/index/b }); });
En plus d'utiliser la méthode du préfixe, vous pouvez également utiliser le premier paramètre de la méthode de groupe paramètres, comme suit :
Route::group(['prefix' => 'index'], function () { Route::get('a', function () { return 'a'; // 匹配/index/a }); Route::get('b', function () { return 'b'; // 匹配/index/b }); });
Espace de noms
L'espace de noms est également un groupe de routage fréquemment utilisé.
Route::group(['namespace' => 'Home'], function () { Route::get('home/index', 'IndexController@index'); });
Si le code ci-dessus ne définit pas d'espace de noms, la route ci-dessus sera
Route::get('home/index', 'Home\IndexController@index');
nom de sous-domaine
utilisé Définissez le nom de domaine accessible. S'il ne s'agit pas de ce nom de domaine, il n'est pas accessible même si le chemin est correct.
Route::domain('php.cn')->group(...)
Préfixe de nom
La méthode de nom peut ajouter un préfixe donné
Route::name('abc.')->group( function () { Route::get('home', function () { })->name('home'); }); …… $url = route('abc.home');à l'itinéraire dans chaque groupe d'itinéraires
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!