php 过滤器filter_var验证邮箱/url/ip等

时间:2022-04-01 02:18:16

验证邮箱、url或者ip,除了使用正则外,也可以使用内置的函数库过滤器filter来完成这些功能。

filter_var

(PHP 5 >= 5.2.0, PHP 7)
filter_var — 使用特定的过滤器过滤一个变量

php验证邮箱

<?php
$email = '123456@qq.com';
$result = filter_var($email, FILTER_VALIDATE_EMAIL);
var_dump($result); // 返回 "123456@qq.com"

php验证url地址

<?php
$url = "http://www.fyunw.com";
$result = filter_var($url, FILTER_VALIDATE_URL);
var_dump($result); // 返回 "http://www.fyunw.com"

php验证ip地址

<?php
$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"

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

http://php.net/manual/zh/function.filter-var.php