码迷,mamicode.com
首页 > Web开发 > 详细

PHP filter_input() 函数

时间:2014-05-07 02:07:31      阅读:450      评论:0      收藏:0      [点我收藏+]

标签:style   blog   class   code   java   ext   

   以往,对于常见的SQL注入等漏洞,采取的方式一般都是对数据进行过滤,而对$_GET/$_POST/$_COOKIE/$_SERVER等全局数组变量的直接使用是不够安全的,故PHP 5.2.0版本以后,推出Filter系列函数,对外部脚本的数据进行过滤,比如POST表单中的email邮箱进行验证,则将$filter参数设置FILTER_VALIDATE_EMAIL即可。

函数名:filter_input

作用:从脚本外部获取输入,并进行过滤。用于对来自非安全来源的变量进行验证,比如用户的输入。

格式mixed filter_input(int $type , string $variable [, int $filter = FILTER_DEFAULT [,mixed $options]])

返回值:如果成功,则返回被过滤的数据,如果失败,则返回false,如果variable参数未设置,则返回NULL。

参数说明:

参数 描述
type 必需。规定输入类型。INPUT_GET、INPUT_POST、INPUT_COOKIE、INPUT_ENV、INPUT_SERVER
variable 必需。规定要过滤的变量。
filter

可选。规定要使用的过滤器的ID。默认是FILTER_DEFAULT。

过滤器ID可以是ID名称(比如FILTER_VALIDATE_EMAIL),或ID号(比如 274)。

PHP手册:http://www.php.net/manual/zh/filter.filters.php

options 可选。规定包含标志/选项的数组。检查每个过滤器可能的标志和选项。

示例:

bubuko.com,布布扣
1 $_GET[‘search‘] = ‘foo‘; // This has no effect on the filter_input
2 
3 $search_html = filter_input(INPUT_GET, ‘search‘, FILTER_SANITIZE_SPECIAL_CHARS);
4 $search_url = filter_input(INPUT_GET, ‘search‘, FILTER_SANITIZE_ENCODED);
5 echo "You have searched for $search_html.\n";
6 echo "<a href=‘?search=$search_url‘>Search again.</a>";
7 
8 //示例代码来自PHP手册中的评论
9 //http://www.php.net/manual/zh/function.filter-input.php#99124
bubuko.com,布布扣

 

 

 

PHP filter_input() 函数,布布扣,bubuko.com

PHP filter_input() 函数

标签:style   blog   class   code   java   ext   

原文地址:http://www.cnblogs.com/shockerli/p/php-filter_input.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!