驗證使用者輸入的郵箱有效性與正確性的php代碼

WBOY
發布: 2016-07-25 09:03:43
原創
988 人瀏覽過
  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. }

复制代码


來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板