请求对象

最后更新于:2022-04-02 01:49:28

当前的请求对象由`think\Request`类负责,在很多场合下并不需要实例化调用,通常使用依赖注入即可。在其它场合(例如模板输出等)则可以使用`think\facade\Request`静态类操作。 [TOC=2,3] ## 请求对象调用 在控制器中通常情况下有两种方式进行依赖注入。 ### 构造方法注入 ~~~ request = $request; } public function index() { return $this->request->param('name'); } } ~~~ >[danger] 如果你继承了系统的控制器基类`think\Controller`的话,系统已经自动完成了请求对象的构造方法注入了,你可以直接使用`$this->request`属性调用当前的请求对象。 ~~~ request->param('name'); } } ~~~ ### 操作方法注入 另外一种选择是在每个方法中使用依赖注入。 ~~~ param('name'); } } ~~~ 无论是否继承系统的控制器基类,都可以使用操作方法注入。 >[info] 更多关于依赖注入的内容,请参考后续的依赖注入章节。 ## Facade调用 在没有使用依赖注入的场合,可以通过`Facade`机制来静态调用请求对象的方法(注意`use`引入的类库区别)。 ~~~ param('name'); } } ~~~
';