目录:routes/web.php
基本路由:
Route::get("mytest",function(){
echo "你好";
});
在路由中输出视图admin目录下的index视图:
Route::get("index",function(){
return view('admin.index');
});
在路由中输出控制器中的方法:
Route::get("index",'IndexController@index');
多请求路由(自定义请求):
Route::match(['get','post'],"mytest",function(){
return "多请求路由";
});
响应所有请求:
Route::any(mytest",function(){
return "响应所有请求";
});
路由参数:
必选参数:
Route::get('user/{id}', function ($id) {
return '当前用户的id是:'.$id;
});
访问路径一定要有参数:
可选参数:
Route::get('name/{id?}', function ($id="san") {
return '用户名为:'.$id;
});
访问路径可以没有参数,上面路由默认设置了路径没有参数时,id=san
字段验证,id参数必须为字母:
Route::get('name/{id?}', function ($id="san") {
return '用户名为:'.$id;
})->where('id','[A-Za-z]+');
多个参数,并且带有验证:
Route::get('name/{name}/{id?}', function ($name,$id="san") {
return '用户名的id为:'.$id.',用户名name为:'.$name;
})->where(['id'=>'[A-Za-z]+','name'=>'[0-9]+');
路由别名(把路由user/center用as取别名为center):
**注:路由别名只能用在视图上面,不能在url上访问,会报404错误
在视图上使用:
<a href="{{url(‘user/center’)}}>跳转到user/center路由上 //普通路由在视图上的链接方法
<a href="{{route(‘center’)}}>跳转到user/center路由上 //路由别名后在视图上的链接方法
**
Route::get('user/center', ['as'=>'center',function () {
return '路由别名'.route('center');
}]);
Route::get('user/center',function () {
return '路由别名';
})->name('center');
路由群组:
namespace=>Admin 相当于Admin\LoginController@index中的Admin
prefix=>admin 相当于admin/login中的admin
注意是斜杠”"还是反斜杠”/“
资源路由(包括store(),index(),create(),destroy(),update(),show(),edit()):
Route::resource(‘new’,‘NewController’);
同时使用中间件、路由前缀、命名空间等信息,你可以这样写:
Route::middleware('login')->prefix('home')->namespace('home')->group(function(){
//加载首页的控制器
Route::get('/','IndexController@index');
});