路由简介 :
请求对应着路由,将用户的请求转发给相应的程序进行处理
建立URL与程序之间的映射
Laravel中的请求类型:get、post、put、patch、delete
![](http://upload-images.jianshu.io/upload_images/3532419-4e8d07e95f174f04.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
Route::get('/',function () {
return view('welcome');
});
// get请求路由
$a ="ook";
Route::get($a,function(){
echo 'hhh';
var_dump(555);
});
// post请求路由
Route::post('ook',function(){
return 'aksdjaks';
});
// 多请求路由
Route::match(['get','post'],'ggg',function(){
return 666;
});
Route::any('gggg',function(){
return 'kkk';
});
/**
* 路由参数,该形式的路由中,id必须传,否则会报错
* 当路由有多个类似的时候,会先匹配到第一个路由
*/
Route::get('user/{id}',function($id){
return 'User-'.$id;
});
/**
* 路由参数允许为空,且有默认值
*/
Route::get('user/{name?}',function($name = 'ok'){
return $name;
});
/**
* 限制该路由的name必须为正则所表示的
*/
Route::get('user/{name?}',function($name = 'ok'){
return '--'.$name;
})->where('name','\w{1}');
/**
* 多参数,多正则
*/
Route::get('obb/{id}/{name?}',function($id,$name='ooo'){
return $id.'----'.$name;
})->where(['name'=>'\w{2}','id'=>'[0-9]{2}']);
// 路由别名
Route::get('user/center',['as'=>'center',function(){
return route('center'); // 用于直接生成别名的url
}]);
// 伪静态
Route::get('user/{id}.html',['as'=>'center1',function($id){
echo $id;
}]);
Route::get('user/{id}.shtml',['as'=>'center2',function($id){
echo "shtml--";
return $id;
}]);
// 路由群组
Route::group(['prefix'=>'member'],function(){
Route::get('user/{id}.shtml',['as'=>'center2',function($id){
echo "member--shtml--";
return $id;
}]);
Route::get('user/center',['as'=>'center',function(){
echo "member--";
return route('center'); // 用于直接生成别名的url
}]);
});
// 路由中输出视图
Route::get('view',function(){
return view('hello');
});
// 关联控制器
Route::get('member/info','MemberController@info'); // 关联控制器
Route::get('member/info',[
'uses'=>'MemberController@info',
'as'=>'info',
]); // 关联控制器
Route::get('member1/{id}','MemberController@info')->where('id','[0-9]{1}');