Я возился с freegeoip.net, пытаясь получить больше информации об IP моих посетителей. Я могу успешно получить информацию о массиве для IP-адреса пользователя, но не могу разделить массив и получить отдельные переменные для IP, города, кода страны и т. Д.
Результат массива:
Array ( [ip] => 77.99.179.98 [country_code] => GB [country_name] => United Kingdom [region_code] => ENG [region_name] => England [city] => Gloucester [zip_code] => GL1 [time_zone] => Europe/London [latitude] => 51.8333 [longitude] => -2.25 [metro_code] => 0 )
PHP
<?php
$ip = "77.99.179.98";
$geoip = json_decode(file_get_contents('http://freegeoip.net/json/'.$ip), true);
print_r($geoip);
foreach ($geoip as $result) {
echo $result['ip']."<br>";
}
?>
РЕДАКТИРОВАТЬ:
Теперь я получаю Warning: Illegal string offset 'ip' in ... on line 9
ошибка, но получить первую цифру возвращенного IP-адреса … wth?
Наконец!
<?php
$ip = "77.99.179.98";
$ip_data = file_get_contents('http://freegeoip.net/json/'.$ip);
$data = json_decode($ip_data);
print_r($data);
echo "<br><br>";
echo htmlspecialchars($data->country_name);
?>
Других решений пока нет …