🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 第一部分,响应及模板渲染 ~~~ // 响应get请求 返回字符串类型的路由 Route::get("/no1/test1", function(){ return "这是第一个测试"; }); // 响应post请求 并返回Json数据的路由 Route::post("/no1/test2", function(){ return json_decode(array("msg" => "这是第二个测试")); }); // 响应get及post请求 并返回字符串的路由 Route::match(["get", "post"], "/no1/test3", function(){ return "这是第三个测试"; }); // 响应所有请求,并通过模板引擎渲染返回html代码的路由 Route::any("/no1/test4", function(){ return view("no1/test4"); }); ~~~ 其中view函数为模板渲染函数,传入模板路径,返回渲染后的html ## 第二部分,路由参数 ~~~ // 匹配并获取参数 Route::get("/no1/test5/name/{name}/age/{age}", function($name, $age){ return "姓名:" . $name . " 年龄:" . $age; }); // 根据正则表达式匹配路径 Route::get("/no1/test6/age/{age}", function($age){ return "年龄:" . $age; })->where("age", "\d+"); // 根据正则表达式匹配路径 2 Route::get("/no1/test7/name/{name}/age/{age}", function($name, $age){ return "姓名:" . $name . " 年龄:" . $age; })->where(["name" => "[iguoji|ijing]+", "age" => "\d+"]); // 根据路由地址生成Link Route::get("/no1/test8", function(){ return url("/no1/test8"); }); // 可有可无的参数 Route::get("/no1/test9/{version?}", function($version = "v1"){ return $version; }); ~~~ 其中url函数为根据路由生成当前浏览器完整的地址,另外参考资料中有提到,如果在Router之外的地方可以使用Route::input("参数名")获取值,暂无测试。 ## 第三部分,全局路由参数限制 ~~~ // 根据全局路由设置匹配参数 $router->pattern("id", "\d+"); Route::get("/no1/test10/id/{id}", function($id){ return "编号:".$id; }); // 根据全局路由设置匹配多个参数、经测试,pattern不支持这种数组类型的参数 /*$router->pattern(["name" => "[iguoji|ijing]+", "age" => "\d+"]); Route::get("/no1/test11/name/{name}/age/{age}", function($name, $age){ return "姓名:" . $name . " 年龄:" . $age; });*/ ~~~ 其中`$router->pattern()`函数是在`Laravel5.0`文档中看到的,在这里可以直接使用,而`Laravel5.1`文档中的使用方式是在`F:\wwwroot\Laravel\wechat\app\Providers\RouteServiceProvider.php`中的`boot(Router $router)`函数里使用。 > F:\wwwroot\Laravel\wechat\app\Providers\RouteServiceProvider.php 文件 ~~~ public function boot(Router $router) { // 第12次测试 $router->pattern("wechatID", "\d+"); parent::boot($router); } ~~~ > 路由文件 ~~~ // 在RouteServiceProvider.php文件中设置了参数限制 Route::get("/no1/test12/wechatID/{wechatID}", function($wechatID){ return "微信号:" . $wechatID; }); ~~~