我正在使用来自http://www.hostip.info的API进行地理定位与php。
我能够检索这个国家,我认为省应该工作,但它似乎没有起作用。
这是我的代码:
function getInfoFromIP($theip){
if(!$theip) return false; # Missing parameter
# Pull the XML
$url = 'http://api.hostip.info/?ip='.$theip;
$xml = simplexml_load_file($url);
# Parse the data and store into array
$citystate = explode(", ", $xml->children('gml', true)->featureMember->children()->Hostip->children('gml', true)->name);
$result['city'] = $citystate[0];
$result['state'] = $citystate[1];
$result['country'] = $xml->children('gml', true)->featureMember->children()->Hostip->countryName;
$result['countryabbrev'] = $xml->children('gml', true)->featureMember->children()->Hostip->countryAbbrev;
return $result;
}
$iptocheck = $_SERVER['REMOTE_ADDR']; # Get visitor's IP
$geoiparray = getInfoFromIP($iptocheck);
echo $result['country'];
echo $result['state'];
国家回归加拿大,但国家只是空白。城市不明。它是不支持加拿大省的hostip api吗?如果是这样,检索它的最佳方法是什么?