我正在编写一个简单的表单来检查 .com 域是否可用。我正在使用下面的代码为一堆测试域名评估 3 种方法(@dns_get_record、gethostbyname() 和 checkdnsrr()),但是我得到了 gethostbyname() 和 checkdnsrr() 的所有不可用条目,你可以如果您刷新几次,请参阅@http : //suggestmyname.com/nonwp/arraypush.php。我在本地测试服务器上运行时没有遇到这个问题,有人知道为什么不一致吗?此外,并非所有域都在我的远程服务器上进行检查,而是在我的本地测试服务器上。
$sdomains = array();
array_push($sdomains, 'etc.com');
function domainAvailable1($domain){
$results = @dns_get_record($domain, DNS_ANY);
return empty($results);
}
function domainAvailable2($domain){
return gethostbyname($domain) == $domain;
}
function domainAvailable3($domain){
return !checkdnsrr($domain, 'ANY');
}
echo '<table><tr><td>@dns_get_record</td><td>gethostbyname</td><td>checkdnsrr</td></tr>';
foreach($sdomains as $sdomain){
if (domainAvailable1($sdomain) == true){
echo '<tr><td bgcolor=green>' . $sdomain . ' is available!</td>';
} else {
echo '<tr><td bgcolor=red>' . $sdomain . ' is NOT available.</td>';
}
if (domainAvailable2($sdomain) == true){
echo '<td bgcolor=green>' . $sdomain . ' is available!</td>';
} else {
echo '<td bgcolor=red>' . $sdomain . ' is NOT available.</td>';
}
if (domainAvailable3($sdomain) == true){
echo '<td bgcolor=green>' . $sdomain . ' is available!</td></tr>';
} else {
echo '<td bgcolor=red>' . $sdomain . ' is NOT available.</td></tr>';
}
}