Thinkphp 6.0请求对象和信息

本节课我们来学习一下数据请求的两个功能:请求对象和请求信息。

一.请求对象


1. 使用构造方法注入请求,如下:

namespace app\controller;
use think\Request;
class Rely
{
protected $request;
public function __construct(Request $request)
{
$this->request = $request;
}
public function index()
{
return $this->request->param('username');
}
}


2. Request 请求对象拥有一个 param 方法,传入参数 username,可以得到相应的值;
3. 也可以在普通方法下直接使用,如下:

use think\Request;
class Rely
{
public function index(Request $request)
{
return $request->param('username');
}
}


4. 使用 Facade 方式应用于没有进行依赖注入时使用 Request 对象的场合;

use think\facade\Request;
class Rely
{
public function index()
{
return Request::param('username');
}
}


5. 使用助手函数 request()方法也可以应用在没有依赖注入的场合;
 

class Rely
{
public function index()
{
return request()->param('username');
}
}


二.请求信息


1. Request 对象除了 param 方法外,还有一些请求的固定信息,如表:

Thinkphp 6.0请求对象和信息_第1张图片
2. 上表的调用方法,直接调用即可,无须传入值,只有极个别如果传入 true 获取完
整 URL 的功能;

Request::url();
// 获取完整 URL 地址 包含域名
Request::url(true);
// 获取当前 URL(不含 QUERY_STRING) 不带域名
Request::baseFile();
// 获取当前 URL(不含 QUERY_STRING) 包含域名
Request::baseFile(true);
// 获取 URL 访问根地址 不带域名
Request::root();
// 获取 URL 访问根地址 包含域名
Request::root(true);


3. 还可以获取当前控制器和操作方法的名称:::controller()和::action();
 

return Request::controller().'|'.Request::action();

你可能感兴趣的:(php,php)