filter_var() 验证邮箱、ip、url的格式 php

验证邮箱格式的正确与否;你的第一解决方法是什么呢?php

无论大家怎 么[思] [考] 的;反正我首先想到的就是字符串查找看是否有@符号函数

可是对于结尾的.com或者.net 亦或者.cn等等愈来愈多的域名验证感受棘手;
url

直到了某一天认真的研究了filter_var()函数的参数;.net

我对之前蜻蜓点水式的阅读php文档表示深深的惭愧;code

其实filter_var()第二个参数传FILTER_VALIDATE_EMAIL便可验证邮箱、略加整理就以下;
ip

/**
 * 验证是不是邮箱
 * @param  string  $email 邮箱
 * @return boolean        是不是邮箱
 */
function is_email($email){
    if(filter_var($email,FILTER_VALIDATE_EMAIL)){
        return true;
    }else{
        return false;
    }
}

var_dump(is_email('baijunyao@baijunyao.com'));
// 打印 ture
var_dump(is_email('baijunyao.com'));
// 打印 false

经研究;这个函数验证邮箱的规则就是要有个@符号 ;而后@符号后面还要有个英文句号. ;
文档

咦?看到baijunyao.com;那有木有一个能够验证url域名的函数?字符串

恩;没错;有的;第二个参数传FILTER_VALIDATE_URL就是用来验证url的;get

/**
 * 验证是不是url
 * @param  string  $url   url
 * @return boolean        是不是url
 */
function is_url($url){
    if(filter_var($url,FILTER_VALIDATE_URL)){
        return true;
    }else{
        return false;
    }
}

var_dump(is_url('http://baijunyao.com'));// 打印 true
var_dump(is_url('baijunyao.com'));// 打印 false
var_dump(is_url('http://a'));// 打印 true

根据打印的结果可知;判断是不是url的规则就是要有http:// 后边要跟一个字母数字便可;博客

固然;瓜熟蒂落;第二个参数传FILTER_VALIDATE_IP的时候就是验证是不是ip地址了;

filter_var很强大的样子;那传个FILTER_VALIDATE_PHONE 是否是就能够验证手机号了?

恩恩;;;da an是否认的;你想多了;

白俊遥博客

别看了;这是作文章封面图用的;

相关文章
相关标签/搜索