【笔记】 laravel 的路由

路由简介 :

请求对应着路由,将用户的请求转发给相应的程序进行处理

建立URL与程序之间的映射

Laravel中的请求类型:get、post、put、patch、delete


 
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}');
posted on 2017-07-06 22:38  roadone  阅读(267)  评论(0编辑  收藏  举报