本文实例讲述了laravel框架创建路由的方法。分享给大家供大家参考,具体如下:

我这里使用的laravel版本是5.6,路由位置在routes/web.php中,所以我们在这个文件中添加我们想要添加的路由。
1.基础路由

//get请求,结果如下图
route::get('basic1',function (){
  return 'hello world';
});
//post请求,这里不展示结果图
route::post('basic2',function (){
  return 'post';
});

2.多请求路由

//自定义多请求,自定义的请求放在下面的数组中
route::match(['get','post'],'multy',function(){
  return "多请求路由";
});
//响应所有请求
route::any('multy2',function (){
  return '响应所有请求';
});

自定义多请求

响应所有请求

3.路由参数

//必选参数
route::get('user/{id}',function ($id){
  return '用户的id是'.$id;
});

有参数

没参数

//可选参数,无参数默认值为doubly
route::get('name/{name?}',function ($name = 'doubly'){
  return '用户名为'.$name;
});

参数为kit

没有参数

//字段验证,名字必须为字母
route::get('name/{name?}',function ($name = 'doubly'){
  return '用户名为'.$name;
})->where('name','[a-za-z]+');

参数不为字母时

//多个参数,并且带有参数验证
route::get('user/{id}/{name?}',function ($id,$name = 'doubly'){
  return "id为{$id}的用户名为{$name}";
})->where(['id'=>'\d+','name'=>'[a-za-z]+']);

4.路由别名

//路由别名
route::get('user/center',['as'=>'center',function(){
  return '路由别名:'.route('center');
}]);

使用别名的好处是什么呢?
当我们需要修改路由的时候,比如将user/center改成user/member-center的时候,我们代码中使用route('cneter')生成的url是不需要修改的。

6.路由群组

//路由群组
route::group(['prefix'=>'member'],function (){
  route::get('basic1',function (){
    return '路由群组中的basic1';
  });

  route::get('basic2',function (){
    return '路由群组中的basic2';
  });
});

通过laravel.test/member/basic2访问

7.路由中输出视图

//路由中输出视图
route::get('view',function(){
  return view('welcome');
});

welcome.blade.php模板内容

<h1>这是路由中输出的视图</h1>