php 过滤url_php使用过滤器filter轻松验证邮箱、url和ip地址等

早年使用php的时候还不知道有filter这玩意,那时候判断邮箱、url和ip地址格式是否符合都是用正则表达式。后来随着使用的逐渐深入,才知道在php中也可以使用内置的函数库filter来完成这些功能。

1、验证邮箱

$email = 'sjlinyu@qq.com';

$result = filter_var($email, FILTER_VALIDATE_EMAIL);

var_dump($result); //string(14) "sjlinyu@qq.com"

对于filter_var这个函数,如果验证通过则会返回验证对象,否则返回false。

2、验证url地址

$url = "http://www.01happy.com";

$result = filter_var($url, FILTER_VALIDATE_URL);

var_dump($result); //string(22) "http://www.01happy.com"

3、验证ip地址

$url = "192.168.1.110";

$result = filter_var($url, FILTER_VALIDATE_IP);

var_dump($result); //string(13) "192.168.1.110"

值的一提的是,这方法也可以用来验证ipv6。

$url = "2001:DB8:2de::e13";

$result = filter_var($url, FILTER_VALIDATE_IP);

var_dump($result); //string(17) "2001:DB8:2de::e13"

4、验证数值是否为整数,并且在一个整数区间内

$i = '010';

$result = filter_var(

$i,

FILTER_VALIDATE_INT,

//设定校验的数值范围

array(

'options' => array('min_range' => 1, 'max_range' => 100)

)

);

var_dump($result);//bool(false)

php的变量是弱类型,如果不用过滤器,直接使用大于小于符号判断的话会是真的。

$i = '010';

$result = $i >= 1 && $i <= 100;

var_dump($result);//bool(true)

5、验证浮点数

$float = 12.312;

$result = filter_var($float, FILTER_VALIDATE_FLOAT);

var_dump($result); //float(12.312)

在做一些金额方面的验证时,经常需要验证金额是否为浮点数。

总结

php中的filter过滤器虽然比较冷门,但是功能还是蛮强大的。除了上述这些功能外,还有一些过滤输入的功能,可查阅php手册。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值