这3种php高级过滤了解一下,很实用

国内成立最早的白癜风医院 https://m-mip.39.net/baidianfeng/mipso_4769974.html

在php中有很多的过滤,可以对输入的字符串进行过滤,同时也可以对邮件地址进行过滤,接下来我要讲的是php中的3种高级过滤,在开发中很实用。

第一种:过滤数值范围

在php经常要接收各种数据,其中数值是非常普遍的一种,我们接收到的数值并不是多大都行的,无用的数据对于我们的数据库来说就是浪费资源,所以在接收数据的时候,有必要对数字的范围进行过滤。

对数字的范围进行过滤这里需要用到的是FILTER_VALIDATE_INT这个关键字以及它的附加条件,步骤如下:

1、新建一个变量。

2、通过filter_var函数对这个变量进行过滤,过滤的根据是FILTER_VALIDATE_INT,附加条件是数字的最大值和最小值。例如:filter_var($shuzi,FILTER_VALIDATE_INT,array(options=array(min_range=$min,max_range=$max))。

3、最后就是根据过滤的结果给出相应的提示信息。

第二种:对ipv6地址进行过滤。

如今ipv4地址已经用完了,逐渐开始使用ipv6地址,在接收这类IP地址的时候,我们很可能就会遇到ipv6这样的地址,针对这样的地址,我们借用FILTER_VALIDATE_IP,FILTER_FLAG_IPV6这两个条件来进行过滤。实例代码如下:

$ipv6=:0db9:89a3;

$panduan=filter_var($ipv6,FILTER_VALIDATE_IP,FILTER_FLAG_IPV6);

if($panduan){

echo这是合法的ipv6地址;

}

else{

echo这个ipv6地址不合法;

}

第三种:对查询语句的过滤。

在接收数据的时候,我们不能防止用户输入什么内容,有些用户就故意在输入信息的时候,搞sql注入,在网址上添加查询语句,这样的语句我们是要拒绝接收的,所以,在接收网址的时候,对它进行过滤是非常有必要的,判断地址中是否包含了查询语句。

判断是否包含查询语句,我们可以通过FILTER_VALIDATE_URL和FILTER_FLAG_QUERY_REQUIRED这两个关键字来实现,具体代码如下:

$chaxun=


转载请注明:http://www.aierlanlan.com/rzgz/4637.html