静态调用

<?php
namespace app\index\controller;
use think\facade\Request;
class Index {
public function index()
{
return Request::param(‘name’);
}
}

助手函数

<?php
namespace app\index\controller;
class Index {
public function index()
{
return request()->param(‘name’);
}
}

获取当前控制器/操作

可以通过请求对象获取当前请求的控制器/操作名。

方法 含义
controller 当前请求的控制器名
action 当前请求的操作名

多应用模式,可以通过下面的方法来获取当前应用
app(‘http’)->getName();

检测变量是否设置

可以使用has方法来检测一个变量参数是否设置,如下:
Request::has(‘id’,’get’);
Request::has(‘name’,’post’);

变量获取

变量获取使用\think\Request类的如下方法及参数:

变量类型方法(‘变量名/变量修饰符’,’默认值’,’过滤方法’)

变量类型方法包括:

方法 描述
param 获取当前请求的变量
get 获取 $_GET 变量
post 获取 $_POST 变量
put 获取 PUT 变量
delete 获取 DELETE 变量
session 获取 SESSION 变量
cookie 获取 $_COOKIE 变量
request 获取 $_REQUEST 变量
server 获取 $_SERVER 变量
env 获取 $_ENV 变量
route 获取 路由(包括PATHINFO) 变量
middleware 获取 中间件赋值/传递的变量
file 获取 $_FILES 变量
all V6.0.8+ 获取包括 $_FILES 变量在内的请求变量,相当于param+file

助手函数

为了简化使用,还可以使用系统提供的input助手函数完成上述大部分功能。
判断变量是否定义
input(‘?get.id’);
input(‘?post.name’);
获取GET参数
// 获取单个变量
input(‘get.id’);

获取请求类型

在很多情况下面,我们需要判断当前操作的请求类型是GET、POST、PUT、DELETE或者HEAD,一方面可以针对请求类型作出不同的逻辑处理,另外一方面有些情况下面需要验证安全性,过滤不安全的请求。
请求对象Request类提供了下列方法来获取或判断当前请求类型:

用途 方法
获取当前请求类型 method
判断是否GET请求 isGet
判断是否POST请求 isPost
判断是否PUT请求 isPut
判断是否DELETE请求 isDelete
判断是否AJAX请求 isAjax
判断是否PJAX请求 isPjax
判断是否JSON请求 isJson
判断是否手机访问 isMobile
判断是否HEAD请求 isHead
判断是否PATCH请求 isPatch
判断是否OPTIONS请求 isOptions
判断是否为CLI执行 isCli
判断是否为CGI模式 isCgi