一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - laravel框架路由分組,中間件,命名空間,子域名,路由前綴實例分析

laravel框架路由分組,中間件,命名空間,子域名,路由前綴實例分析

2020-06-14 14:58懷素真 PHP教程

這篇文章主要介紹了laravel框架路由分組,中間件,命名空間,子域名,路由前綴,結合實例形式分析了laravel框架路由分組,中間件,命名空間,子域名,路由前綴相關概念、原理與基本使用方法,需要的朋友可以參考下

本文實例講述了laravel框架路由分組,中間件,命名空間,子域名,路由前綴。分享給大家供大家參考,具體如下:

laravel的路由分組,就是把一些具有相同特征的路由進行分組,比如一些路由需要進行驗證,一些路由有共同的前綴,一些路由有相同的控制器命名空間等。

這樣把路由組合在一起,方便管理,維護性更好。

?
1
2
3
4
Route::group([], function () {
  Route::get('user/list', function () {});
  Route::get('user/info', function () {});
});

上面的代碼把兩個路由歸為一組,但并沒有應用任何相同特征,這樣的意義并不大。

一、中間件

為一組路由設置相同的中間件,可設置多個中間件,執行順序依數組中的順序來運行。

?
1
2
3
4
5
6
Route::middleware(['auth'])->group(function () {
  //使用auth中間件
  Route::get('user/list', function () {});
  //使用auth中間件
  Route::get('user/info', function () {});
});

二、路由前綴

有些路由有共同的前綴,我們可以為這些路由設置一個共同的前綴。

?
1
2
3
4
5
6
Route::prefix('user')->group(function () {
  //處理/user/list
  Route::get('list', function () {});
  //處理/user/info
  Route::get('info', function () {});
});

三、路由名稱前綴

為路由設置名稱時,我們想為同組下的路由名稱都加上相同的名稱前綴。

?
1
2
3
4
5
6
Route::name('user.')->prefix('user')->group(function () {
  //處理/user/list,并命名為user.list
  Route::get('list', function () {})->name('list');
  //處理/user/info,并命名為user.info
  Route::get('info', function () {})->name('info');
});

四、子域名

針對有多商家的場景,某些家商有自已獨立的子域名,這時候我們需要針對子域名來進行路由分組。

?
1
2
3
4
5
6
7
8
9
10
Route::domain('{shop}.tmall.com')->group(function () {
  //處理xxx.tmall.com/orders/xxx
  //$shop參數始終是分組路由的第一個參數
  Route::get('orders/{id}', function ($shop, $id) {
  });
  //處理xxx.tmall.com/products/xxx
  //$shop參數始終是分組路由的第一個參數
  Route::get('products/{id}', function ($shop, $id) {
  });
});

五、命名空間

當我們綁定路由到控制器方法時,如果沒有顯示指定控制器的命名空間,默認為 App\Http\Controllers。

如果分組路由需要綁定位于該命名空間下的子命名空間,如:App\Http\Controllers\Orders。則可為該分組路由設置一個命名空間。

?
1
2
3
4
5
6
7
8
Route::namespace('Orders')->prefix('orders')->group(function () {
  //處理/orders/delete
  //并綁定到App\Http\Controllers\Orders下的DeleteController控制器的index方法
  Route::post('delete', 'DeleteController@index');
  //處理/orders/add
  //并綁定到App\Http\Controllers\Orders下的AddController控制器的index方法
  Route::post('add', 'AddController@index');
});

希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。

原文鏈接:https://www.cnblogs.com/jkko123/p/10705709.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲国产成人久久精品影视 | 日本免费三片在线观看 | 高跟丝袜人妖sissy露出调教 | 国产福利视频一区二区微拍 | 天堂8在线天堂资源bt | 午夜深情在线观看免费 | 被巨大黑人的翻白眼 | 男女做污事 | 97久久精品午夜一区二区 | 2018天天弄 | 91啦中文在线观看 | 国产卡一卡二卡四卡无卡 | 欧美亚洲天堂 | 国产在视频线在精品 | 性夜夜春夜夜爽AA片A | 成年人在线播放视频 | 精品国产91久久久久久久 | 经典欧美gifxxoo动态图暗网 | 男女发生性关系视频 | 精品国产一区二区三区久久影院 | 国产caoni555在线观看 | 国内精品91东航翘臀女神在线 | 羞羞一区二区三区四区片 | 国产成+人+综合+亚洲不卡 | 日本人成动漫网站在线观看 | 国产最新精品视频 | 国产欧美日韩图片一区二区 | 国士李风起全文在线阅读 | 欧美一卡2卡三卡4卡5卡免费观看 | 精品视频一区二区三区免费 | 爆操 | 久久黄色录像 | 亚洲人成网站在线观看青青 | 91精品久久一区二区三区 | 美国女艳星brandilove | 日韩精选在线 | 日本人在线看片 | 久久香蕉电影 | 果冻传媒ⅹxxxxxhd | 成人综合婷婷国产精品久久免费 | 成人福利在线播放 |