我的项目的目标是创建一个大容量WHOIS检查器,它从多个whois记录中输出选择信息。
我想我很接近完成它,只是有一个恼人的错误,我无法弄清楚。(这很可能是很简单的事情)
我的代码如下;
$domain = explode("\r\n", $domains);
print_r($domain);
echo "<br /><br />";
foreach ($domain as $item) {
fwrite($fp, $item . "\r\n");
while (!feof($fp)) {
$lookup .= fread($fp, 8192);
}
$value = explode("\r\n\r\n", $lookup);
$whois_data = array();
foreach ($value as $values) {
$details = explode(":\r\n", $values, 2);
$whois_data[trim($details[0])] = $details[1];
}
echo "Show WHOIS data for " . $item . "<br />";
print_r($whois_data);
unset($whois_data);
echo "<br /><br />";
}$domains是一个文本框,每行只有一个域,我的输出如下;
阵列( => madeupdomainname.co.uk 1 => anothermadeupdomain.co.uk )
显示madeupdomainname.co.uk的WHOIS数据
阵列(域名=> madeupdomainname.co.uk Registrant => City .注册人类型=> Unknown的地址=> 123号伪造道路城市英国注册官=> 123 => => City. t/a复合标记=捏造URL: madeupdomainname.co.uk相关日期=>注册日期:14-2月-1929年续约日期: 11-Feb-2023最后更新:12-Feb-2031年注册状态=>,直至续订日期。名称服务器=> ns1.madeupdomainname.co.uk ns2.madeupdomainname.co.uk ns3.madeupdomainname.co.uk ns4.madeupdomainname.co.uk WHOIS查询于01:09:24 08-2011年12月-2011年12月--该WHOIS信息是免费提供的,诺米内英国,.uk域名的中央登记处。这一信息和.uk WHOIS是:=>版权诺米内英国1996-2011年。=>您不能访问.uk WHOIS或使用来自它的任何数据,除非在全部可用的使用条款允许的情况下,包括以下限制:(A)将数据用于广告或其重新包装、重新编译、重新分配或重用(B)遮挡、删除或隐藏本通知的任何或全部,以及(C)超过查询速率或数量限制。这些数据是在“如实”的基础上提供的,可能落后于登记册。访问可能在任何时候被撤回或限制。=> )
显示anothermadeupdomain.co.uk的WHOIS数据
阵列(域名=> madeupdomainname.co.uk Registrant => City .注册人类型=> Unknown的地址=> 123号伪造道路城市英国注册官=> 123 => => City. t/a复合标记=捏造URL: madeupdomainname.co.uk相关日期=>注册日期:14-2月-1929年续约日期: 11-Feb-2023最后更新:12-Feb-2031年注册状态=>,直至续订日期。名称服务器=> ns1.madeupdomainname.co.uk ns2.madeupdomainname.co.uk ns3.madeupdomainname.co.uk ns4.madeupdomainname.co.uk WHOIS查询于01:09:24 08-2011年12月-2011年12月--该WHOIS信息是免费提供的,诺米内英国,.uk域名的中央登记处。这一信息和.uk WHOIS是:=>版权诺米内英国1996-2011年。=>您不能访问.uk WHOIS或使用来自它的任何数据,除非在全部可用的使用条款允许的情况下,包括以下限制:(A)将数据用于广告或其重新包装、重新编译、重新分配或重用(B)遮挡、删除或隐藏本通知的任何或全部,以及(C)超过查询速率或数量限制。这些数据是在“如实”的基础上提供的,可能落后于登记册。访问可能在任何时候被撤回或限制。=> )
正如您所看到的,它正确地从第一个域抓取WHOIS数据,但是忽略了第二个域,只是重新使用第一个域的信息,这确实让我感到困扰。有什么建议吗?
谢谢。
发布于 2011-12-08 02:06:03
WHOIS协议只允许每个连接一个请求。必须为每个请求打开一个新连接。
https://stackoverflow.com/questions/8424989
复制相似问题