ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习

目录:

  • 46 . 请求变量
      • 1. 获取param变量,包括上传文件的信息!!~~
        • 1.默认值:
        • 2. 变量过滤。局部||全局
        • 3. 获取部分变量
        • 4. 变量修饰符:
      • 2. 助手函数,真的简单
  • 47.请求类型和HTTP头信息
    • 一、自己做:
    • 1. 获取url的参数信息:

46 . 请求变量

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第1张图片
ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第2张图片
这样写报错,要用dump
ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第3张图片

1. 获取param变量,包括上传文件的信息!!~~

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第4张图片

// 获取当前请求的name变量
Request::param('name');
// 获取当前请求的所有变量(经过过滤)
Request::param();
// 获取当前请求的所有变量(原始数据)
Request::param(false);
// 获取当前请求的所有变量(包含上传文件)
Request::param(true);

要注意,上传 的时候不能够开启过滤。开启的话,上传信息就获取不到了。

同时,这个124是过滤的。第三个是不过滤的。
我们加一个特殊字符,他没有变化:
ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第5张图片
因为我们这里是默认不过滤的。那我们设置一个全局函数进行过滤一下看看。
全局函数在config/app.php中的default_filter中,进行设置,

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第6张图片比如,我们加上一个函数,

在这里插入图片描述
这时候,就看到了,124过滤了,第三个没有过滤。

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第7张图片

上传文件那一块了:

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第8张图片

在这里插入图片描述
ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第9张图片

依赖注入的一些东西

如果你使用了依赖注入的方式,可以更简单的方式获取请求变量。

namespace app\index\controller;

use think\Request;

class Index 
{
     
	public function index(Request $request)
    {
     
    	// 获取name请求变量
    	return $request->name;
    }
}

param方法会把当前请求类型的参数和路由变量以及GET请求合并,并且路由变量是优先的。
ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第10张图片

然后定义路由。

在这里插入图片描述
因为我们是单模块,然后直接定义了 路由,所以就不用先控制器,再方法再参数了。直接方法,参数就够了。

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第11张图片

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第12张图片
ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第13张图片>在这里插入图片描述

1.默认值:

获取输入变量的时候,可以支持默认值,例如当URL中不包含$_GET['name']的时候,使用下面的方式输出的结果比较。

Request::get('name'); // 返回值为null
Request::get('name',''); // 返回值为空字符串
Request::get('name','adam'); // 返回值为adam

2. 变量过滤。局部||全局

1. 全局过滤
因为我们这里是默认不过滤的。那我们设置一个全局函数进行过滤一下看看。
全局函数在config/app.php中的default_filter中,进行设置,

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第14张图片比如,我们加上一个函数,

在这里插入图片描述

2.局部过滤
ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第15张图片

3. 获取部分变量

https://www.kancloud.cn/manual/thinkphp5_1/353987
这样,是所有参数都会出现的。
在这里插入图片描述

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第16张图片
然后用这些就会展示我们想要的东西

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第17张图片

4. 变量修饰符:

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第18张图片

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头信息

在这里插入图片描述

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第19张图片

返回的时候,如果是 bool 值,要用 dump来做。

在这里插入图片描述

一、自己做:

1. 获取url的参数信息:

这样用助手函数 input("get.column")
这样的方法,对应的传参方式就是正常的?传参方法。

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第20张图片

ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第21张图片
ThinkPHP学习 --- 46 . 请求变量--------------47. 请求类型和HTTP头信息 -----------------学习_第22张图片

另一种方法: $col = Request::instance()->param("column");
param自动识别是那种请求,然后直接返回,

https://www.kancloud.cn/manual/thinkphp5/118044,获取url请求的方法,看这里。

你可能感兴趣的:(think,PHP学习)