请求对象
最后更新于: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');
}
}
~~~
';