2016-07-06 3 views

答えて

2

あなたはapiを必要としません。 ドメイン名が本当に存在するかどうかをDNSクエリで確認できます。

PHP checkdnsrr - 指定したインターネットホスト名またはIPアドレスのドメインチェックの

例に対応するDNSレコードをチェックします。regのEXPとの電子メールの検証の

<?php 
function validate_domain($domain){ 

     //Check the DNS if the domain has an MX record 
     if(checkdnsrr($domain,"MX")){ 
     return true; 
     }else{ 
     return false; 
     } 
} 
?> 

例を+ DNSが

<?php 
function validate_email($email){ 

    $exp = "^[a-z\'0-9]+([._-][a-z\'0-9]+)*@([a-z0-9]+([._-][a-z0-9]+))+$"; 

    if(eregi($exp,$email)){ 

     if(checkdnsrr(array_pop(explode("@",$email)),"MX")){ 
     return true; 
     }else{ 
     return false; 
     } 

    }else{ 

     return false; 
    }  
} 
?> 
をチェック

ref:http://php.net/manual/en/function.checkdnsrr.php

+0

私はこれをどのように実装しますか? – Jez

+0

ドメインが実際に存在する場合は、validate_domain( "doaminname.com")を呼び出してtrueを返します。 –

+1

機能から取り出して、if(checkdnsrr($ domain、 "MX"))を使用しています。ありがとうございました。 – Jez

0

これらの2つの機能を使用して、ウェブサイトが有効かどうかを確認することができます

function is_website_valid() { 
    if ($headers && (@$headers[0]=='HTTP/1.0 404 Not Found' || @$headers[1]=='HTTP/1.0 404 Not Found')) { 
     return 'invalid'; 
    } 
    elseif (!is_array($headers)) { 
     return 'invalid'; 
    } 
    else { 
     return 'valid'; 
    } 
} 
function get_website_headers($website) { 
    ini_set("user_agent", "Mozilla custom agent"); 
    $headers = get_headers($website, 1); 
    return $headers; 
} 
$status = array('website'=>$website,'status'=>is_website_valid()); 
echo json_encode($status); 
+0

どうすれば実装できますか? – Jez

+0

同じように実装したものを置くことができますか? –

関連する問題