原来判断邮箱、url和ip地址格式是否符合都是用正则表达式。后来才知道在php中也可以使用内置的函数库filter来完成这些功能,下面分享给大家
1、验证邮箱 代码如下: $email = '[email protected]'; $result = filter_var($email, FILTER_VALIDATE_EMAIL); var_dump($result); //string(14) "[email protected]" 2、验证url地址 代码如下: $url = "http://www.jb51.net"; $result = filter_var($url, FILTER_VALIDATE_URL); var_dump($result); //string(22) "http://www.jb51.net" 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)