首页> 实战笔录 >PHP开发笔记 >ThinkPHP ThinkPHP
TP3.2输入验证和I方法使用
作者:小萝卜 2019-11-21 【 TP3.2 】 浏览 4050
简介在Web开发过程中,我们经常需要获取系统变量或者用户提交的数据,这些变量数据错综复杂,而且一不小心就容易引起安全隐患,但是如果利用好ThinkPHP提供的变量获取功能,就可以轻松的获取和驾驭变量了。
在Web开发过程中,我们经常需要获取系统变量或者用户提交的数据,这些变量数据错综复杂,而且一不小心就容易引起安全隐患,但是如果利用好ThinkPHP提供的变量获取功能,就可以轻松的获取和驾驭变量了。
在接收变量之前,可以先对请求来源(方式)进行判断
在很多情况下面,我们需要判断当前操作的请求类型是GET 、POST 、PUT或 DELETE,一方面可以针对请求类型作出不同的逻辑处理,另外一方面有些情况下面需要验证安全性,过滤不安全的请求。

我们不建议直接使用传统方式获取,因为没有统一的安全处理机制,后期如果调整的话,改起来会比较麻烦。所以,更好的方式是在框架中统一使用I函数进行变量获取和过滤。
I方法是ThinkPHP众多单字母函数中的新成员,其命名来自于英文Input(输入),主要用于更加方便和安全的获取系统输入变量。
echo I('get.id'); // 相当于 $_GET['id']
echo I('get.name'); // 相当于 $_GET['name']
变量过滤
// 系统默认的变量过滤机制
'DEFAULT_FILTER' => 'htmlspecialchars'
第三个参数可以传入函数名,则表示调用该函数对变量进行过滤并返回(在变量是数组的情况下自动使用array_map进行过滤处理),否则会调用PHP内置的filter_var方法进行过滤处理,例如:
I('post.email','','email');
系统自带的的函数有:
intbooleanfloatvalidate_regexpvalidate_urlvalidate_emailvalidate_ipstringstrippedencodedspecial_charsunsafe_rawemailurlnumber_intnumber_floatmagic_quotescallback
如果未通过验证,则返回空字符串
很赞哦! (0)
上一篇:TP3.2同时操作多个数据库
相关文章
- tp5.0使用think-queue+redis实现消息队列简易教程
- TP6/ThinkPHP6修改Session存活时间
- PHPExcel在TP3.2下使用方法
- url的301跳转 tp3.2 tp5.0实现方式
- TP6实现前后端分离的图片验证码,验证码怎么以接口形式返回
- TP6 Validate内置验证规则总览
- TP6/ThinPHP6 获取主键自增ID
- tp6表单验证提交之后报错Call to a member function set() on null
- tp6多应用模式下渲染视图报错D:\PhpstormProjects\tp6\app\admin\view\.html
- TP5 添加平铺文字水印,并设置文字之间的间距和文字的角度
