PHP filter初学

PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤。

PHP Filter函数

函数 描述 版本
filter_has_var() 检查是否存在指定输入类型的变量。 5
filter_id() 返回指定过滤器的 ID 号。 5
filter_input() 从脚本外部获取输入,并进行过滤。 5
filter_input_array() 从脚本外部获取多项输入,并进行过滤。 5
filter_list() 返回包含所有得到支持的过滤器的一个数组。 5
filter_var_array() 获取多个变量,并进行过滤。 5
filter_var() 获取一个变量,并进行过滤。 5

剩下的PHP Filters我简单分为3大类

第一类:用于自定义函数来过滤数据

FILTER_CALLBACK

<?php
	
/*
使用 FILTER_CALLBACK 过滤器,可以调用自定义的函数,把它作为一个过滤器来使用
*/

function convertSpace($string){
	return str_replace("_",".",$string);
}

$string = "www_baidu_com";

//FILTER_CALLBACK 过滤器调用用户自定义函数来过滤数据。
echo filter_var($string,FILTER_CALLBACK,array("options"=>"convertSpace"));

?>

第二类:

FILTER_SANITIZE_XXX

这类常用于删除所有字符,除了XXX的规定格式

像:

FILTER_SANITIZE_EMAIL 删除所有字符,除了字母、数字以及 !#$%&'*+-/=?^_`{|}~@.[]
FILTER_SANITIZE_URL 删除所有字符,除了字母、数字以及 $-_.+!*'(),{}|\^~[]`<>#%";/?:@&=
FILTER_SANITIZE_NUMBER_INT 删除所有字符,除了数字和 +-
FILTER_SANITIZE_NUMBER_FLOAT 删除所有字符,除了数字、+- 以及 .,eE

第三类:

FILTER_VALIDATE_XXX

这类函数常用于把值作为XXX来验证

像:

FILTER_VALIDATE_INT 把值作为整数来验证。
FILTER_VALIDATE_BOOLEAN 把值作为布尔选项来验证。如果是 "1"、"true"、"on" 和 "yes",则返回 TRUE。如果是 "0"、"false"、"off"、"no" 和 "",则返回 FALSE。否则返回 NULL。
FILTER_VALIDATE_FLOAT 把值作为浮点数来验证。
FILTER_VALIDATE_REGEXP 根据 regexp(一种兼容 Perl 的正则表达式)来验证值。
FILTER_VALIDATE_URL 把值作为 URL 来验证。
FILTER_VALIDATE_EMAIL 把值作为 e-mail 地址来验证。
FILTER_VALIDATE_IP 把值作为 IP 地址来验证,只限 IPv4 或 IPv6 或 不是来自私有或者保留的范围。

还有一个特殊的不进行任何过滤的,去除或编码特殊字符:

FILTER_UNSAFE_RAW


注:在关联数组中,常使用数组的键名称为"options"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值