Информация к размышлению:
------------------скрипт-------------------------
function getmicrotime()
{
list($usec, $sec) = explode(" ", microtime());
return ((float)$usec + (float)$sec);
}
$time_start = getmicrotime();
$output=file("http://api.hostip.info/get_html.php?ip=12.215.42.19");
print("Использование host.ip: ".(getmicrotime()-$time_start)." сек<br />");
print_r($output);
print "<br />\n";
$time_start = getmicrotime();
exec("/usr/local/php/bin/whois 12.215.42.19",$output);
print("Использование whois: ".(getmicrotime()-$time_start)." сек<br />");
print_r($output);
print "<br />\n";
$time_start = getmicrotime();
exec("/usr/local/bin/geoiplookup 12.215.42.19",$output);
print("Использование geoiplookup: ".(getmicrotime()-$time_start)." сек<br />");
print_r($output);
------------------------------------------------------
----------результат-------------------------------
Использование host.ip: 0.61849188804626 сек
Array ( [0] => Country: UNITED STATES (US) [1] => City: Sugar Grove, IL )
Использование whois: 0.0038669109344482 сек
Array ( [0] => Country: UNITED STATES (US) [1] => City: Sugar Grove, IL )
Использование geoiplookup: 0.005850076675415 сек
Array ( [0] => Country: UNITED STATES (US) [1] => City: Sugar Grove, IL [2] => GeoIP Country Edition: US, United States )