验证邮箱格式的正确与否,你的第一解决方案是什么呢?不管你们怎么思考的,反正我首先想到的就是字符串查找看是否有@符号,但是对于结尾的.com或者.net 亦或者.cn等等越来越多的域名验证感觉棘手,直到了某一天认真的研究了filter_var()函数的参数,我对以前走马观花式的阅读php文档表示深深的惭愧,其实filter_var()第二个参数传FILTER_VALIDATE_EMAIL即可验证邮箱、略加整理就如下。
/**
* 验证是否是邮箱
* @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('84531813@qq.com'));
// 打印 ture
var_dump(is_email('z6.net.cn'));
// 打印 false
经研究;这个函数验证邮箱的规则就是要有个@符号,然后@符号后面还要有个英文句号.。
z6.net.cn那有木有一个可以验证url域名的函数?
恩,没错,有的,第二个参数传FILTER_VALIDATE_URL就是用来验证url的。
/**
* 验证是否是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://z6.net.cn'));// 打印 true
var_dump(is_url('z6.net.cn'));// 打印 false
var_dump(is_url('http://a'));// 打印 true
根据打印的结果可知,判断是否是url的规则就是要有“http://”后边要跟一个字母数字即可。当然,顺理成章;第二个参数传FILTER_VALIDATE_IP的时候就是验证是否是ip地址了。
filter_var很强大的样子,那传个FILTER_VALIDATE_PHONE 是不是就可以验证手机号了?
恩恩,答案是否定的。你想多了…..
未经允许不得转载:任鹏个人博客 » filter_var() 验证邮箱、ip、url的格式
最新评论
Forex wiki. https://lt.forex-stock-bitcoin-brokers.com
Magnificent items from you, man. I have take note your stuff
Following on from the 3rd March Meetings held by economic de
It is remarkable, rather valuable message dfgdlfg2131.32
一般都会有一个沙盒期的,过了沙盒期就会慢慢放出来
百度不收录是应为是新站的原因吗?
The spike in consumer prices that left inflation at a four-d