laravel5.1框架基礎(chǔ)之路由詳解
本文實(shí)例講述了laravel5.1框架基礎(chǔ)之路由。分享給大家供大家參考,具體如下:
我在學(xué)習(xí)Laravel5.1,雖然剛剛開始,認(rèn)識很淺,但還是需要做做歸納,清晰認(rèn)識
建議大家到laravel學(xué)院學(xué)習(xí)laravel
1、路由(app/routes.php)
- 在routes.php中進(jìn)行路由設(shè)置,;
- 作為訪問的統(tǒng)一入口,是控制器的統(tǒng)一調(diào)度;
- 沒有配置路由,就沒有正確地訪問路徑;
- 路由需要自己規(guī)定一定的規(guī)則,方便自己查看、使用、理解;
2、路由基本類型及使用示例
- get
Route::get('articles','ArticleController@index');
或
Route::get('db',function(){ $name = DB::connection()->getDatabaseName(); echo $name; });
- post
Route::post('article/update','ArticleController@update');
- match
匹配[]
中的請求方式
Route::match(['get','post'],'/hello',function(){ return "match"; });
- any
匹配所有請求方式
Route::any('/hello',function(){ return "any"; });
3、從路由獲取參數(shù)
- 必用參數(shù)
Route::get('/blog/{name}',function($name){ return $name; // 返回name顯示 });
即除了 /blog/{name}的路由類型,都不能進(jìn)來
- 可選參數(shù)
Route::get('/blog/{name?}',function($name = 'name'){ return $name; // 返回name顯示,如果沒設(shè)置就取默認(rèn)值 });
即設(shè)置了默認(rèn)值,路由中加了 ? 未輸入?yún)?shù)則使用默認(rèn)值
- 正則參數(shù)
正則可以更靈活些,匹配更多需求。
Route::get('/blog/{id?}',function($id="1"){ return "{$id}";//輸出blog的ID, })->where('name','^\d+$');//正則匹配為只能是數(shù)字,不然將無法找到路由;
- 參數(shù)全局約束
在app/Providers/RouteServiceProvider的boot(Router $router)
方法作如下修改:
public function boot(Router $router) { $router->pattern('id','^\d+$'); parent::boot($router);//將id全局限制為數(shù)字 }
boot()
方法在每個服務(wù)提供者(Providers)類中都有用到,將再Providers啟動方法執(zhí)行后執(zhí)行
可以通過boot()方法對Providers實(shí)現(xiàn)依賴注入
4、路由還可以做
給路由起個別名或者分個組
防CSRF攻擊
Restful風(fēng)格路由
詳細(xì)內(nèi)容
X、 app/routes.php 注釋翻譯(拙劣練習(xí))
自從開始接觸laravel和github發(fā)現(xiàn),越來越難以逃避自己拙劣的英語,我該開始不再畏懼,好好面對,所以開始將laravel源碼中出現(xiàn)的英文注釋逐步進(jìn)行翻譯,待自己的對框架熟悉時候,再添加自己的中文注釋,來強(qiáng)化自己的認(rèn)識。
/* |-------------------------------------------------------------------------- | Application Routes |-------------------------------------------------------------------------- | | Here is where you can register all of the routes for an application. | It's a breeze. Simply tell Laravel the URIs it should respond to | and give it the controller to call when that URI is requested. | */ /* |-------------------------------------------------------------------------- | 應(yīng)用路由 |-------------------------------------------------------------------------- | | 你可以很輕松地在這里注冊所有的路由。 | 簡單地告訴laravel,當(dāng)特定地址被請求的時候,訪問對應(yīng)的控制器,使地址得到響應(yīng)。 | */
更多關(guān)于Laravel相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門與進(jìn)階教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Laravel框架的PHP程序設(shè)計有所幫助。
相關(guān)文章
php處理靜態(tài)頁面:頁面設(shè)置緩存時間實(shí)例
本篇文章主要介紹了php處理靜態(tài)頁面:頁面設(shè)置緩存時間實(shí)例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-06-06PHP實(shí)現(xiàn)圖片旋轉(zhuǎn)效果實(shí)例代碼
這篇文章主要介紹了PHP實(shí)現(xiàn)圖片旋轉(zhuǎn)效果實(shí)例代碼,本文給出代碼示例,代碼中包含一些說明注釋,需要的朋友可以參考下2014-10-10php學(xué)習(xí)Eloquent修改器源碼示例解析
這篇文章主要為大家介紹了php學(xué)習(xí)Eloquent修改器源碼示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06使用PHPStudy在本地快速建立網(wǎng)站并實(shí)現(xiàn)局域網(wǎng)外訪問(無公網(wǎng)IP)
這篇文章主要為大家介紹快速在本地環(huán)境下搭建web網(wǎng)站,同時實(shí)現(xiàn)可在外網(wǎng)環(huán)境下訪問的方法,文中有詳細(xì)的圖文介紹,具有一定的參考價值,需要的朋友可以參考下2023-10-10PHP數(shù)組去重比較快的實(shí)現(xiàn)方式
使用PHP的array_unique()函數(shù)允許你傳遞一個數(shù)組,然后移除重復(fù)的值,返回一個擁有唯一值的數(shù)組,通過本文給大家介紹PHP數(shù)組去重比較快的實(shí)現(xiàn)方式,需要的朋友參考下本文2016-01-01