Heim  >  Artikel  >  Backend-Entwicklung  >  验证用户输入的邮箱有效性与正确性的php代码

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

WBOY
WBOYOriginal
2016-07-25 09:03:43982Durchsuche
  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. }
复制代码


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn