PHP验证过滤器Validate filters

名称id说明选项options标记flags
整型验证过滤器(int)257验证值是否为整数,验证成功后转为整型值。

default:如果验证失败则返回指定的默认值。

min_range:指定整数的最小值。

max_range:正定整数的最大值。

FILTER_FLAG_ALLOW_OCTAL

FILTER_FLAG_ALLOW_HEX

布尔验证过滤器(boolean)258验证值是否为布尔值,验证成功后转为整型值。如果值为1、true、on或者yes则返回true,否则返回false。default:如果验证失败则返回指定的默认值。FILTER_NULL_ON_FAILURE
浮点验证过滤器(float)259验证值是否为浮点数,验证成功后转为浮点型值。

default:如果验证失败则返回指定的默认值。

decimal:指定小数点符号,默认为“,”。

FILTER_FLAG_ALLOW_THOUSAND
正则验证过滤器(validate_regexp)272使用正则表达式验证值。

default:如果验证失败则返回指定的默认值。

regexp:验证时使用的正则表达式。必须要有此选项,否则会产生警告并返回false。

 
URL地址验证过滤器(validate_url)273验证值是否为URL地址,验证成功后返回URL地址。PHP5.2.1起隐式的使用

FILTER_FLAG_SCHEME_REQUIRED和FILTER_FLAG_SCHEME_REQUIRED标记。

default:如果验证失败则返回指定的默认值。

FILTER_FLAG_SCHEME_REQUIRED

FILTER_FLAG_HOST_REQUIRED
FILTER_FLAG_PATH_REQUIRED

FILTER_FLAG_QUERY_REQUIRED

邮件地址验证过滤器(validate_email)274验证值是否为邮件地址,验证成功后返回邮件地址。不支持注释、空格折叠和无点域名。default:如果验证失败则返回指定的默认值。FILTER_FLAG_EMAIL_UNICODE
IP地址验证过滤器(validate_ip)275验证值是否为IP地址,验证成功后返回IP地址。default:如果验证失败则返回指定的默认值。

FILTER_FLAG_IPV4

FILTER_FLAG_IPV6

FILTER_FLAG_NO_PRIV_RANGE

FILTER_FLAG_NO_RES_RANGE

MAC地址验证过滤器(validate_ip)276验证值是否为MAC地址,验证成功后返回MAC地址。default:如果验证失败则返回指定的默认值。 
域名验证过滤器(validate_domain)277验证域名标签长度是否有效,验证成功后返回域名。default:如果验证失败则返回指定的默认值。FILTER_FLAG_HOSTNAME

PHP5.4.11之前+0和-0只会被验证为浮点型,之后则会被验证为浮点型和整型。

<?php
$int_ops=array(
    'options'=>array(
        'default'=>5,
        'min_range'=>5
    ),
    'flags'=>FILTER_FLAG_ALLOW_OCTAL
);
$float_ops=array(
    'options'=>array(
        'decimal'=>'%')
);
$regex_ops=array(
    'options'=>array(
        'regexp'=>"#[a-z]#")
);
$url_ops=array(
    'flags'=>FILTER_FLAG_PATH_REQUIRED|FILTER_FLAG_QUERY_REQUIRED
);
$domain_ops=array(
    'flags'=>FILTER_FLAG_HOSTNAME
);
var_dump(filter_var('1',FILTER_VALIDATE_INT,$int_ops));
var_dump(filter_var('011',FILTER_VALIDATE_INT,$int_ops));
var_dump(filter_var('011',FILTER_VALIDATE_BOOLEAN));
var_dump(filter_var('1',FILTER_VALIDATE_BOOLEAN));
var_dump(filter_var('11,231%23',FILTER_VALIDATE_FLOAT,$float_ops));
var_dump(filter_var('1.23',FILTER_VALIDATE_FLOAT,$float_ops));
var_dump(filter_var('abaxs',FILTER_VALIDATE_REGEXP,$regex_ops));
var_dump(filter_var('http://a/s?z',FILTER_VALIDATE_URL,$url_ops));
var_dump(filter_var('http://a/s',FILTER_VALIDATE_URL,$url_ops));
var_dump(filter_var('a@b.com',FILTER_VALIDATE_EMAIL));
var_dump(filter_var('a@b',FILTER_VALIDATE_EMAIL));
var_dump(filter_var('256.233.445.55',FILTER_VALIDATE_IP));
var_dump(filter_var('192.168.0.1',FILTER_VALIDATE_IP));
var_dump(filter_var('5C-26-0A-7F-0C-E0',FILTER_VALIDATE_MAC));
var_dump(filter_var('local12123',FILTER_VALIDATE_DOMAIN,$domain_ops));
?>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值