GomelHawk
@GomelHawk
PHP / Symfony developer

Нужен аналог расширения GeoIP (определение страны по IP адресу)?

Нужен вышеуказанный модуль определения страны по IP адресу посетителя на PHP.

С удовольствием взял бы сторонний, но к сожалению сходу ничего толкового не нашел с учетом моих условий. Взял бы «GeoIP», но там как я понял нужны определенные телодвижения хостера, мне не подходит. Решения, использующие для работы MySQL или обращения к внешним ресурсам так же не подходят.

Нужен грубо говоря локальный файлик ***.php (допустим в комплекте с локальной базой в фомате CSV, XML, TXT ...), подключив который можно будет вызвать искомую функцию.



Порывшись в закромах интернета нашел саму базу на maxmind.com — там есть бинарный формат и CSV. Сейчас начал писать свой скрипт на PHP, работающий с этой базой, но если кто подскажет уже готовый скриптик, буду премного благодарен.
  • Вопрос задан
  • 5367 просмотров
Решения вопроса 1
alexxxst
@alexxxst
Никаких телодвижений хостера не нужно. Положите базу к себе в нужную диру, файлы пхп-шные и включайте их. Я так уже давно пользуюсь.

require_once("geoip/geoip.inc");

$gip = geoip_open("geoip/GeoIP.dat", GEOIP_STANDARD);
echo geoip_country_name_by_addr($gip, $ip);
geoip_close($gip);
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
sevka_fedoroff
@sevka_fedoroff
www.maxmind.com/app/city#api

По-моему там есть готовые скрипты на PHP для работы с их локальной базой
Ответ написан
liaren
@liaren
Фрилансер, опенсорсер, тех лид
В PHP для этой цели использую IpLoc
Ответ написан
Комментировать
@Aleks_B
На мой взгляд куда удобнее просто получать данные через быстрый API.
В этом случае нет необходимости хранить/обновлять/поддерживать БД.
Попробуйте сервис от BigDataCloud.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы