静态调用
<?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 |