# 获取请求对象 ## 引入请求对象的几种方法 当前的请求对象由 `think\Request` 类负责,在很多场合下并不需要实例化调用,通常使用依赖注入即可。在其它场合(例如模板输出等)则可以使用 `think\facade\Request` 静态类操作。 这里获取请求参数以 get 请求方式为例。 方法一: 使用 Facade 静态代理 ```php <?php namespace app\index\controller; use think\facade\Request; class Index extends \think\Controller { public function index() { dump(Request::get()); } } ``` 方法二: 使用实例化 Request 类 ```php <?php namespace app\index\controller; use think\Request; class Index extends \think\Controller { public function index() { $req = new Request(); dump($req->get()); } } ``` 方法三: 使用依赖注入 ```php <?php namespace app\index\controller; use think\Request; class Index extends \think\Controller { public function index(Request $req) { dump($req->get()); } } ``` 方法四: 使用 Controller 的 request 属性 ```php <?php namespace app\index\controller; use think\Controller; class Index extends Controller { public function index() { dump($this->request->get()); } } ``` 其中 `$this` 就代表当前控制器的实例。 此时,输入 `http://www.my-tp5.com/?name=xiaoyu&age=20` 可以看到输出 : ``` array(2) { ["name"] => string(6) "xiaoyu" ["age"] => string(2) "20" } ``` 方法五: 使用助手函数 ```php <?php namespace app\index\controller; use app\common\controller\Base; class Index extends Base { public function index($name) { return response() ->data('Hello,' . $name) ->code(200) ->contentType('text/plain'); } } ```