动态网站的开发,离不开数据的请求。无论是文章页的文章id、还是发送邮件的邮箱传递、以及头像修改的图片都是请求的一部分。
那么thinkphp8多应用下怎么使用请求呢?
一.请求参数的获取方式
<?php
declare (strict_types = 1);
namespace app\index\controller;
use think\Request;
use think\facade\Request as Requests;
class Index
{
protected $request;
public function __construct(Request $request)
{
$this->request = $request;
}
public function index()
{
//助手函数
var_dump(input('name'));
//请求对象类
var_dump($this->request->param('name'));
//静态类
var_dump(Requests::param('name'));
//助手函数
var_dump(request()->param('name'));
}
}
二.对象类的详细信息
var_dump($this->request);
三.变量判断
var_dump($this->request->has('name'));
四.变量获取
$this->request->param('name');
问号传参也可以用请求方式获取:$this->request->get('name');
但是路由参数就获取不到
五.设置默认值,再参数为空的情况下可以设置默认值
用途:例如状态切换的默认值全部
$this->request->param('name','我是默认值');
六.变量过滤
$this->request->param('name','','md5');
$this->request->param('name','','strip_tags,md5');//多条件过滤
就是把数据用函数处理一下,多数是清理一些特殊字符,使请求更安全
七.类型转换
1)、s转为字符串
var_dump($this->request->param('name/s'));
2)、d转为整型
$this->request->param('name/d');
3)、b转为布尔
4)、a转为数组
$this->request->param('name/a');
5)、f转为浮点
$this->request->param('name/f');