cimus/ip-geo-base
Определение страны, города, региона и координат по IP через базы ipgeobase.ru. Загружает архив, конвертирует текстовые базы в бинарный формат для быстрого поиска. Обновление данных удобно запускать по cron (например, раз в неделю).
Данный модуль предназначен для определения географических данных по IP адресу. Используются текстовые базы сервиса гео-локации ipgeobase.ru, которые преобразуются в бинарный формат для оптимизации поиска.
Вы можете использовать Composer для автоматизированного процесса установки:
$ php composer.phar require cimus/ip-geo-base
или вручную добавте ссылку в ваш файл composer.json и запустить $ PHP composer.phar update:
{
"require" : {
"cimus/ip-geo-base": "^1.0"
},
}
Перед первым использованием необходимо инициализировать БД, для этого нужно запустить команды
require_once 'Util/IpGeoBaseUtil.php';
use Cimus\IpGeoBase\Util\IpGeoBaseUtil;
$path = __DIR__ . '/DB';
$util = new IpGeoBaseUtil();
$util->loadArchive($path);
$util->convertInBinary($path);
Note. Данные команды можно повесить на крон и запускать с периодичностью 1 раз в неделю. Данные обнавляются каждый день.
Определение географических данных
require_once 'IpGeoBase.php';
use Cimus\IpGeoBase\IpGeoBase;
$path = __DIR__ . '/DB';
$search = new IpGeoBase($path);
$info = $search->search('176.121.128.1');
print_r($info);
Array
(
[country] => RU
[city] => Чебоксары
[region] => Республика Чувашия
[district] => Приволжский федеральный округ
[latitude] => 56.137451
[longitude] => 47.244030
[ip_start] => 176.121.128.0
[ip_stop] => 176.121.191.255
)
How can I help you explore Laravel packages today?