Web アプリでhttp://www.hostip.info/use.htmlを使用して、IP アドレスのおおよその都市の場所を表示しようとしています。API の内容を実際に表示する方法がわかりません。これが機能していないものです。
function showCity($currIP){
$lookupData = 'http://api.hostip.info/get_html.php?ip='.$currIP;
return $lookupData;
}
Web アプリでhttp://www.hostip.info/use.htmlを使用して、IP アドレスのおおよその都市の場所を表示しようとしています。API の内容を実際に表示する方法がわかりません。これが機能していないものです。
function showCity($currIP){
$lookupData = 'http://api.hostip.info/get_html.php?ip='.$currIP;
return $lookupData;
}
あなたのAPIはこれを返します:
Country: UNITED STATES (US)
City: Seattle, WA
IP: 168.111.127.225
したがって、その結果に対して文字列の解析を行う必要があります。以下を使用すると、開始できます。
$array = preg_split('/$\R?^:/m', $lookupData);
print_r($array);
代わりにこれを試してください:
$array = preg_split("/[\r\n]/", $lookupData, -1, PREG_SPLIT_NO_EMPTY);
また、mcmajkel が述べたように、JSON api リンクを使用する場合は、次のようにアクセスできます。
$lookupData = 'http://api.hostip.info/get_json.php?ip='.$currIP;
$api = json_decode($lookupData);
$myName = $api->country_name;
$myCode = $api->country_code;
$myCity = $api->city;
$myIP = $api->ip;
GregP で言及されているように、この呼び出しは文字列を返します。ただし、 http://api.hostip.info/get_json.php?ip=12.215.42.19を呼び出すことができます
そして、見返りに、解析が容易になる素敵な JSON を取得し ます。