验证用户输入的邮箱有效性与正确性的php代码

原创
2016-07-25 09:03:43 638浏览
  1. function validate_email($email){

  2. $exp="^[a-z'0-9]+([._-][a-z'0-9]+)*@([a-z0-9]+([._-][a-z0-9]+))+$";
  3. if(eregi($exp,$email)){ //先用正则表达式验证email格式的有效性
  4. if(checkdnsrr(array_pop(explode("@",$email)),"MX")){//再用checkdnsrr验证email的域名部分的有效性
  5. return true;
  6. }else{
  7. return false;
  8. }
  9. }else{
  10. return false;
  11. }
  12. }

  13. //注意:checkdnsrr函数在win主机上是无效的!下面是国外某程序员提出的一种解决办法,另外写了个函数代替checkdnsrr函数:

  14. function myCheckDNSRR($hostName, $recType=''){
  15. if(!emptyempty($hostName)){
  16. if( $recType=='' ) $recType="MX";
  17. exec("nslookup -type=$recType $hostName", $result);
  18. foreach($result as $line){
  19. if(eregi("^$hostName",$line)){
  20. return true;
  21. }
  22. }
  23. return false;
  24. }
  25. return false;
  26. }

复制代码


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
上一条:php禁止页面缓存输出的代码 下一条:mysql中RAND()随机查询记录的效率问题和解决办法

相关文章

查看更多