常规使用方式
可以携带参数,也可以不携带参数
<?php/*** 使用闭包*/# 不携带传递参数Route::get('hi/:name', function () {return 'Hi';});# 携带参数传递Route::get('hi2/:name', function ($name) {return 'Hi '. $name;});
依赖注入请求对象
也可以依赖注入请求对象,在这里 use think\facade\Route; 加不加其实对功能没啥影响,只是加上后会更加清晰一点。提醒自己使用的是 fade 下 Route 类,这只是是静态代理而已。
<?phpuse think\facade\Route;use think\Request;# 闭包中使用依赖注入Route::rule('hello/:name', function (Request $request, $name) {// 获取请求方法的类型$method = $request->method();return '[' . $method . '] Hello,' . $name;});
postman 测试效果:
依赖注入响应对象
同样的我们也可以依赖注入响应对象,例子如下:
<?phpuse think\Response;# 注入一个响应对象Route::rule('hello/:name', function (Response $rep, $name) {return $rep->data('Hello,' . $name)->code(200)->contentType('text/plain');});
也可以写成下面这样,连 return 都省略,完全的链式调用。
<?phpRoute::get('hello/:name', response()->data('Hello,' . $name)->code(200)->contentType('text/plain'));
