Главная
  PHP
Сервер Apache
  Perl
Контакты


Главная

  скрипт PHP

определение географического местонахождения по IP-адресу.

PHP скрипт определения города по IP.

IP-геолокация и обратная технология - IP-геокодирования в Интернете — это определение географического местонахождения посетителей, на основе их IP-адреса, при загрузки страниц сайта, вплоть района города, .
geoPlugin - это самый простой способ геолокации посетителей страниц вашего сайта, позволяющий предоставлять геолокализованный контент, соответствующий их географическому положению.
Например - изменение языка интерфейса сайта, вывод цен на товары в местной валюте, информацию о погоде, отображение баннеров относящихся к стране посетителя, сообщение о применении европейских правил конфиденциальности GDPR и многое другое.

Веб-служба геолокации PHP предоставляет стабильную, надежную, быструю и бесплатную геолокацию IP-адресов, поступающую от многих миллионов посетителей для тысяч клиентов по всему миру.
Хотя сервис предоставляет не такую полную информацию, как коммерческие и geoPlugin не может гарантировать, что он всегда будет оставаться бесплатным, но существует уже с 2006 года.

geoPlugin предоставляет бесплатный API геолокации на нескольких разных языках программирования в одном вызове API. Не требуется установка программного обеспечения, и независимо от того, выбран ли ваш язык программирования Javascript , PHP , XML , JSON , ASP или CSV.
Этот продукт включает данные GeoLite, созданные MaxMind и доступные на maxmind.com .

API веб-службы Geolocation позволяет программировать php-скрипты для создания динамически геолокализованных страниц с использованием массива PHP, предоставляемого geoPlugin.
Код API геолокации, на языке программирования PHP, можно получить на сайте — geoPlugin


Включите код PHP в вашу страницу с расширением .php

<?php
echo var_export(unserialize(file_get_contents('http://www.geoplugin.net/php.gp?ip='.$_SERVER['REMOTE_ADDR'])));
?>

Который выведет информацию о массиве параметров geoPlugin

array ( 'geoplugin_request' => '35.173.48.53', 'geoplugin_status' => 200, 'geoplugin_delay' => '1ms', 'geoplugin_credit' => 'Some of the returned data includes GeoLite data created by MaxMind, available from http://www.maxmind.com.', 'geoplugin_city' => 'Ashburn', 'geoplugin_region' => 'Virginia', 'geoplugin_regionCode' => 'VA', 'geoplugin_regionName' => 'Virginia', 'geoplugin_areaCode' => '', 'geoplugin_dmaCode' => '511', 'geoplugin_countryCode' => 'US', 'geoplugin_countryName' => 'United States', 'geoplugin_inEU' => 0, 'geoplugin_euVATrate' => false, 'geoplugin_continentCode' => 'NA', 'geoplugin_continentName' => 'North America', 'geoplugin_latitude' => '39.0481', 'geoplugin_longitude' => '-77.4728', 'geoplugin_locationAccuracyRadius' => '1000', 'geoplugin_timezone' => 'America/New_York', 'geoplugin_currencyCode' => 'USD', 'geoplugin_currencySymbol' => '$', 'geoplugin_currencySymbol_UTF8' => '$', 'geoplugin_currencyConverter' => '1', )

Отформатированный вывод

Geolocation results for 35.173.48.53:
City: Ашберн
Region: Вирджиния
Region Code: VA
Region Name: Вирджиния
DMA Code: 511
Country Name: США
Country Code: US
In the EU?: 0
EU VAT Rate:
Latitude: 39.0481
Longitude: -77.4728
Radius of Accuracy (Miles): 1000
Timezone: America/New_York
Currency Code: USD
Currency Symbol: $
Exchange Rate: 1

Нужные значения которых, можете использовать в php-коде на ваших веб-страницах

Пример кода PHP

<?php
$user_ip = getenv('REMOTE_ADDR');
$geo = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=$user_ip"));
$city = $geo["geoplugin_city"];
$region = $geo["geoplugin_regionName"];
$country = $geo["geoplugin_countryName"];
echo "City: ".$city."<br>";
echo "Region: ".$region."<br>";
echo "Country: ".$country."<br>";
?>

Пример вывода значений из массива geoPlugin

City: Ashburn
Region: Virginia
Country: United States

Результаты геолокации для IP 35.173.48.53:

Город: Ашберн
Регион: Вирджиния
Код региона: VA
Название региона: Вирджиния
Код DMA: 511
Название страны: США
Код страны: US
In the EU?: 0
EU VAT Rate
координаты шир: 39.0481, дол: -77.4728
Точность радиус (мили): 1000
Часовой пояс: America/New_York
Код валюты: USD
Символ валюты: $
Обменный курс: 1

Некоторые места, которые вы можете посетить недалеко от г. Ашберн:

  1. Место: Ashburn
    Регион: Virginia
    Широта: 39.0437200
    Долгота: -77.4874900
  2. Место: Dulles Town Center
    Регион: Virginia
    Широта: 39.0376100
    Долгота: -77.4158200
  3. Место: Sterling
    Регион: Virginia
    Широта: 39.0062200
    Долгота: -77.4286000
  4. Место: Herndon
    Регион: Virginia
    Широта: 38.9695500
    Долгота: -77.3861000
  5. Место: Poolesville
    Регион: Maryland
    Широта: 39.1459400
    Долгота: -77.4169300

IP Geolocation by geoPlugin