博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php 验证邮箱的方法
阅读量:6336 次
发布时间:2019-06-22

本文共 1115 字,大约阅读时间需要 3 分钟。

     在开发 web系统时,经常在注册或者登陆或者邮箱保护的时候会需要验证邮箱,现在我来分享邮箱验证的一些小tips。(多说一句,现在基本用手机号注册登录是趋势了,匹配手机号我后面再讲了)。

  1.最开始也是最简单的,就是验证下邮箱的组成 ,思路: 3~50 (字母数字_)   + @ + 邮箱域名。

    以下为测试示例:     

$Email = '572752023@qq.com';$reg = '#^\w{3,50}@\w{1,64}\.\w{2,5}$#';if(preg_match($reg,$Email)){    echo '验证通过';}else{    echo '错误的邮箱格式';}

   这是最简单的邮箱验证了,主要是验证了 邮箱的格式是否正确了

     2. 后来 翻看php.net里面关于PHP自带的验证函数 filter_var()(准确来说,叫做 过滤器),更好用!!!  详细链接在此:。

    对于验证邮箱来说,这一句就够了,filter_var($email,FILTER_VALIDATE_EMAIL)  

$email =  '572752023@qq.com';if(filter_var($email,FILTER_VALIDATE_EMAIL)){    echo '验证通过';}else{    echo '错误的邮箱格式';}

  以上基本能够验证基本的邮箱格式,但是并不知道邮箱的服务器是否可用,这时候就用checkdnsrr() 来检查 主机的DNS记录,以此判断邮箱是否存在, 

$Email = '572752023@qq.com';$host = substr($Email,strpos($Email,'@')+1);var_dump(checkdnsrr($host));

  3. 最后 如果碰到二级域名的邮箱,可以用 以下的 正则表达式来 判断,主要思路就是 多检查二次域名,如下:

  

$email =  '572752023@qq.com.cn';$reg = '#([a-z0-9]*[-_.]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[.][a-z]{2,3}([.][a-z]{2})?#i';if(preg_match($reg,$email)){    echo '验证通过';}else{    echo '错误的邮箱格式';}

 

  以上为验证邮箱的简单记录,希望对各位有用~~~

     本文永久地址:

 

转载于:https://www.cnblogs.com/guixiaoming/p/6429976.html

你可能感兴趣的文章
redis 数据类型详解 以及 redis适用场景场合
查看>>
mysql服务器的主从配置
查看>>
巧用AJAX技术,通过updatePanel控件实现局部刷新
查看>>
20140420技术交流活动总结
查看>>
SaltStack配置salt-api
查看>>
各种情况下block的类型
查看>>
ThinkPHP 3.2.x 集成极光推送指北
查看>>
js作用域链
查看>>
java中如何选择Collection Class--java线程(第3版)
查看>>
为运维人员插上腾飞更远的翅膀!
查看>>
Word 2003中编辑标记与格式标记大讨论
查看>>
从国内向海外转移域名经验谈
查看>>
浅谈apache与tomact的整合
查看>>
SQL Server vNext CTP1 on Linux
查看>>
1-为 Lync Server 2010 准备 Active Directory 域服务
查看>>
NetBackup下ORACLE恢复测试方案实例解析
查看>>
【有奖征文】“失业”程序员的苦辣酸甜
查看>>
IE9是如何被FireFox4超越全球市场份额的?
查看>>
linux bunzip2命令
查看>>
敏捷个人:通过实践TOGAF来思考如何学习并应用新的方法?
查看>>