本文實例講述了laravel5.1框架基礎之路由。分享給大家供大家參考,具體如下:
我在學習Laravel5.1,雖然剛剛開始,認識很淺,但還是需要做做歸納,清晰認識
建議大家到laravel學院學習laravel
1、路由(app/routes.php)
- 在routes.php中進行路由設置,;
- 作為訪問的統(tǒng)一入口,是控制器的統(tǒng)一調(diào)度;
- 沒有配置路由,就沒有正確地訪問路徑;
- 路由需要自己規(guī)定一定的規(guī)則,方便自己查看、使用、理解;
2、路由基本類型及使用示例
Route::get('articles','ArticleController@index');
或
Route::get('db',function(){
$name = DB::connection()->getDatabaseName();
echo $name;
});
Route::post('article/update','ArticleController@update');
匹配[]
中的請求方式
Route::match(['get','post'],'/hello',function(){
return "match";
});
匹配所有請求方式
Route::any('/hello',function(){
return "any";
});
3、從路由獲取參數(shù)
Route::get('/blog/{name}',function($name){
return $name; // 返回name顯示
});
即除了 /blog/{name}的路由類型,都不能進來
Route::get('/blog/{name?}',function($name = 'name'){
return $name; // 返回name顯示,如果沒設置就取默認值
});
即設置了默認值,路由中加了 ? 未輸入?yún)?shù)則使用默認值
正則可以更靈活些,匹配更多需求。
Route::get('/blog/{id?}',function($id="1"){
return "{$id}";//輸出blog的ID,
})->where('name','^\d+$');//正則匹配為只能是數(shù)字,不然將無法找到路由;
在app/Providers/RouteServiceProvider的boot(Router $router)
方法作如下修改:
public function boot(Router $router)
{
$router->pattern('id','^\d+$');
parent::boot($router);//將id全局限制為數(shù)字
}
boot()
方法在每個服務提供者(Providers)類中都有用到,將再Providers啟動方法執(zhí)行后執(zhí)行
可以通過boot()方法對Providers實現(xiàn)依賴注入
4、路由還可以做
給路由起個別名或者分個組
防CSRF攻擊
Restful風格路由
詳細內(nèi)容
X、 app/routes.php 注釋翻譯(拙劣練習)
自從開始接觸laravel和github發(fā)現(xiàn),越來越難以逃避自己拙劣的英語,我該開始不再畏懼,好好面對,所以開始將laravel源碼中出現(xià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.
|
*/
/*
|--------------------------------------------------------------------------
| 應用路由
|--------------------------------------------------------------------------
|
| 你可以很輕松地在這里注冊所有的路由。
| 簡單地告訴laravel,當特定地址被請求的時候,訪問對應的控制器,使地址得到響應。
|
*/
更多關于Laravel相關內(nèi)容感興趣的讀者可查看本站專題:《Laravel框架入門與進階教程》、《php優(yōu)秀開發(fā)框架總結》、《php面向?qū)ο蟪绦蛟O計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Laravel框架的PHP程序設計有所幫助。
您可能感興趣的文章:- 修改Laravel5.3中的路由文件與路徑
- Laravel最佳分割路由文件(routes.php)的方式
- Laravel5.1框架路由分組用法實例分析
- Laravel5.1 框架路由基礎詳解
- Laravel 之url參數(shù),獲取路由參數(shù)的例子
- laravel實現(xiàn)前后臺路由分離的方法
- laravel框架的安裝與路由實例分析
- Laravel框架創(chuàng)建路由的方法詳解
- 淺談一種Laravel路由文件劃分方式