我的项目的目的是创建一个批量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是一个textarea框,每行一个域,我的PHP输出如下;
数组([0] =&gt; madeupdomainname.co.uk [1] =&gt; anothermadeupdomain.co.uk)
显示madeupdomainname.co.uk的WHOIS数据
数组([域名] =&gt; madeupdomainname.co.uk [注册人] =&gt; Made Up Inc. [注册人类型] =&gt;未知[注册人地址] =&gt; 123假路城英国[注册商] =&gt; Made Up Inc. t / a Made Up [Tag = MADEUP]网址:madeupdomainname.co.uk [相关日期] =&gt;注册日期:1929年2月14日续订日期:2023年2月11日最后更新: 20-Feb-2031 [注册状态] =&gt;注册到续订日期。[名称服务器] =&gt; ns1.madeupdomainname.co.uk ns2.madeupdomainname.co.uk ns3.madeupdomainname.co.uk ns4.madeupdomainname.co .uk [在2011年12月8日09:09:24发表的WHOIS查询] =&gt; [ - 此WHOIS信息由Nominet UK免费提供.uk域名的中央注册表。此信息和.uk WHOIS是:] =&gt; [版权所有Nominet UK 1996 - 2011.] =&gt; [您不得访问.uk WHOIS或使用其中的任何数据,除非nominet.org.uk上的完整使用条款允许/ whois,其中包括以下限制:(A)使用数据进行广告,o重新包装,重新编译,再分发或重复使用(B)隐藏,删除或隐藏本通知的任何或全部内容,以及(C)超出查询率或数量限制。数据按“原样”提供,可能落后于寄存器。访问权限可随时撤销或限制。] =&gt; )
显示anothermadeupdomain.co.uk的WHOIS数据
数组([域名] =&gt; madeupdomainname.co.uk [注册人] =&gt; Made Up Inc. [注册人类型] =&gt;未知[注册人地址] =&gt; 123假路城英国[注册商] =&gt; Made Up Inc. t / a Made Up [Tag = MADEUP]网址:madeupdomainname.co.uk [相关日期] =&gt;注册日期:1929年2月14日续订日期:2023年2月11日最后更新: 20-Feb-2031 [注册状态] =&gt;注册到续订日期。[名称服务器] =&gt; ns1.madeupdomainname.co.uk ns2.madeupdomainname.co.uk ns3.madeupdomainname.co.uk ns4.madeupdomainname.co .uk [在2011年12月8日09:09:24发表的WHOIS查询] =&gt; [ - 此WHOIS信息由Nominet UK免费提供.uk域名的中央注册表。此信息和.uk WHOIS是:] =&gt; [版权所有Nominet UK 1996 - 2011.] =&gt; [您不得访问.uk WHOIS或使用其中的任何数据,除非nominet.org.uk上的完整使用条款允许/ whois,其中包括以下限制:(A)使用数据进行广告,o重新包装,重新编译,再分发或重复使用(B)隐藏,删除或隐藏本通知的任何或全部内容,以及(C)超出查询率或数量限制。数据按“原样”提供,可能落后于寄存器。访问权限可随时撤销或限制。] =&gt; )
正如您所看到的那样,它正确地抓住了第一个域中的WHOIS数据,然后忽略了第二个域,只是重新使用了第一个域WHOS信息,这些信息真的让我烦恼。有什么建议吗?
感谢。
答案 0 :(得分:1)
WHOIS协议仅允许每个连接一个请求。您必须为每个请求打开一个新连接。