Laravel5.1框架路由分組用法實(shí)例分析
本文實(shí)例講述了Laravel5.1框架路由分組用法。分享給大家供大家參考,具體如下:
路由分組有啥好處?
有時(shí)候啊 一大堆路由它們都有共同的地方,比如都使用一個(gè)中間件(過(guò)兩天寫(xiě))或是前綴都一樣,避免代碼重復(fù) 我們可以將他們分到一組中。
1 路由分組可以共享哪些屬性?
- 中間件 middleware。
- 控制器的命名空間 namespace。
- 子域名 domain
- 路由前綴
1.1 中間件
關(guān)于中間件大K還沒(méi)有寫(xiě)筆記介紹,這里先簡(jiǎn)單說(shuō)下 中間件就是接收到請(qǐng)求后驗(yàn)證一些東西或相應(yīng)后驗(yàn)證一些東西,比如Laravel自帶的Auth中間件 就是驗(yàn)證用戶有沒(méi)有登錄進(jìn)來(lái),如果用戶沒(méi)用登錄,那么就會(huì)自動(dòng)跳轉(zhuǎn)到登錄頁(yè)面,我們完全不用實(shí)現(xiàn)這一方面的邏輯。
好啦 回歸正題,咱一塊兒看看路由分組咋寫(xiě):
/** * 這就是一個(gè)路由分組 /user和/user/profile都將使用auth中間件。 */ Route::group(['middleware' => 'auth'], function (){ Route::get('/user', function (){ }); Route::get('/user/profile', function (){ }); });
1.2 路由前綴
/** * 路由前綴呢 就是講此分組中的所有路由路徑前加個(gè)前綴 */ Route::group(['prefix' => 'admin'], function (){ /** * 路由分組是可以嵌套的哦 */ Route::group(['middleware' => 'auth'], function (){ /** * 這條路由不僅使用auth中間件,而且還加了admin前綴,我們通過(guò)/admin/user才能訪問(wèn) */ Route::get('/user', function (){ }); Route::get('/user/profile', function (){ }); }); /** * 訪問(wèn)路徑是:/admin */ Route::get('/', function (){ });; });
1.3 子域名
/** * 比如我們可以輸入larger來(lái)訪問(wèn)路由,在子路由中可以通過(guò)參數(shù)來(lái)把larger取到。 */ Route::group(['domain' => '{account}.myapp.com'], function () { Route::get('user/{id}', function ($account, $id) { // }); });
注意:如果想測(cè)試子域名你需要使用homestand來(lái)設(shè)置你的域名。
1.4 命名空間
這又是一個(gè)沒(méi)寫(xiě)的點(diǎn) 這里包含控制器的內(nèi)容,先看例子吧 明天就學(xué)控制器了 倒時(shí)候做筆記。
/** * 只要指明了命名空間,那么在子路由中所使用的所有控制器都位于App\Http\Controller\Admin這個(gè)命名空間下。 */ Route::group(['namespace' => 'Admin', 'prefix' => 'admin'], function(){ /** * 其實(shí)HomeController在App\Http\Controller\Admin這個(gè)命名空間下。 */ Route::get('/', 'HomeController@index'); });
1.5 分組命名
補(bǔ)充一點(diǎn),前一篇的基礎(chǔ)文章我們學(xué)了給路由命名,那么分組可不可以命名呢,Yo Man。。當(dāng)然可以:
/** * 跟普通路由一樣 也是用as來(lái)命名但是首字母最好大寫(xiě)后面跟倆冒號(hào) 代表它是一個(gè)分組 如果這樣寫(xiě) 我們就可以通過(guò) route('Admin::index')方式來(lái)找到它了 */ Route::group(['namespace' => 'Admin', 'prefix' => 'admin', 'as' => 'Admin::'], function(){ Route::get('/', ['as' => 'index','uses' => 'HomeController@index']); });
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門(mén)與進(jìn)階教程》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Laravel框架的PHP程序設(shè)計(jì)有所幫助。
欄 目:PHP編程
下一篇:Laravel框架處理用戶的請(qǐng)求操作詳解
本文標(biāo)題:Laravel5.1框架路由分組用法實(shí)例分析
本文地址:http://mengdiqiu.com.cn/a1/PHPbiancheng/10996.html
您可能感興趣的文章
- 01-11thinkphp框架類庫(kù)擴(kuò)展操作示例
- 01-11關(guān)于Yii2框架跑腳本時(shí)內(nèi)存泄漏問(wèn)題的分析與解決
- 01-11php 實(shí)現(xiàn)簡(jiǎn)單的登錄功能示例【基于thinkPHP框架】
- 01-11Laravel框架Blade模板簡(jiǎn)介及模板繼承用法分析
- 01-11Laravel框架基礎(chǔ)語(yǔ)法與知識(shí)點(diǎn)整理【模板變量、輸出、include引入
- 01-11Laravel框架Eloquent ORM刪除數(shù)據(jù)操作示例
- 01-11Laravel框架Eloquent ORM修改數(shù)據(jù)操作示例
- 01-11Laravel框架Eloquent ORM簡(jiǎn)介、模型建立及查詢數(shù)據(jù)操作詳解
- 01-11laravel5.1框架下的批量賦值實(shí)現(xiàn)方法分析
- 01-11laravel5.5框架的上傳圖片功能實(shí)例分析【僅傳到服務(wù)器端】


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 04-02php本站才可以請(qǐng)求數(shù)據(jù) php本地?cái)?shù)據(jù)庫(kù)
- 04-02關(guān)于txt數(shù)據(jù)庫(kù)php的信息
- 04-02php打印請(qǐng)求數(shù)據(jù) php打印輸出結(jié)果
- 04-02網(wǎng)頁(yè)里php操作數(shù)據(jù)庫(kù) php網(wǎng)頁(yè)例子
- 04-02php插入數(shù)據(jù)庫(kù)為亂碼 php連接數(shù)據(jù)庫(kù)亂
- 04-02php數(shù)據(jù)庫(kù)地址 phpstudy 數(shù)據(jù)庫(kù)
- 04-02php數(shù)據(jù)庫(kù)數(shù)據(jù)相加 php數(shù)據(jù)庫(kù)添加數(shù)據(jù)
- 04-02數(shù)據(jù)權(quán)限架構(gòu)思路php 數(shù)據(jù)權(quán)限設(shè)計(jì)方
- 04-02php數(shù)據(jù)庫(kù)輸入變量 php里輸出數(shù)據(jù)庫(kù)數(shù)
- 04-02php如何用導(dǎo)入數(shù)據(jù) php用來(lái)導(dǎo)入其他文
隨機(jī)閱讀
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-10C#中split用法實(shí)例總結(jié)
- 01-11Mac OSX 打開(kāi)原生自帶讀寫(xiě)NTFS功能(圖文
- 01-10delphi制作wav文件的方法
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 04-02jquery與jsp,用jquery
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置