ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习
Posted Zero_Adam
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习相关的知识,希望对你有一定的参考价值。
目录:
46 . 请求变量
这样写报错,要用dump
1. 获取param变量,包括上传文件的信息!!~~
// 获取当前请求的name变量
Request::param('name');
// 获取当前请求的所有变量(经过过滤)
Request::param();
// 获取当前请求的所有变量(原始数据)
Request::param(false);
// 获取当前请求的所有变量(包含上传文件)
Request::param(true);
要注意,上传 的时候不能够开启过滤。开启的话,上传信息就获取不到了。
同时,这个124是过滤的。第三个是不过滤的。
我们加一个特殊字符,他没有变化:
因为我们这里是默认不过滤的。那我们设置一个全局函数进行过滤一下看看。
全局函数在config/app.php
中的default_filter中,进行设置,
比如,我们加上一个函数,
这时候,就看到了,124过滤了,第三个没有过滤。
上传文件那一块了:
依赖注入的一些东西
如果你使用了依赖注入的方式,可以更简单的方式获取请求变量。
namespace app\\index\\controller;
use think\\Request;
class Index
{
public function index(Request $request)
{
// 获取name请求变量
return $request->name;
}
}
param方法会把当前请求类型的参数和路由变量以及GET请求合并,并且路由变量是优先的。
然后定义路由。
因为我们是单模块,然后直接定义了 路由,所以就不用先控制器,再方法再参数了。直接方法,参数就够了。
>
1.默认值:
获取输入变量的时候,可以支持默认值,例如当URL中不包含$_GET['name']
的时候,使用下面的方式输出的结果比较。
Request::get('name'); // 返回值为null
Request::get('name',''); // 返回值为空字符串
Request::get('name','adam'); // 返回值为adam
2. 变量过滤。局部||全局
1. 全局过滤
因为我们这里是默认不过滤的。那我们设置一个全局函数进行过滤一下看看。
全局函数在config/app.php
中的default_filter中,进行设置,
比如,我们加上一个函数,
2.局部过滤
3. 获取部分变量
https://www.kancloud.cn/manual/thinkphp5_1/353987
这样,是所有参数都会出现的。
然后用这些就会展示我们想要的东西
4. 变量修饰符:
Request::get('id/d');
Request::post('name/s');
Request::post('ids/a');
如果你要获取的数据为数组,请一定注意要加上
/a
修饰符才能正确获取到。
2. 助手函数,真的简单
https://www.kancloud.cn/manual/thinkphp5_1/353987#_274
47.请求类型和HTTP头信息
返回的时候,如果是 bool 值,要用 dump来做。
以上是关于ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习的主要内容,如果未能解决你的问题,请参考以下文章