Symfony2 ipGeoBase Bundle
Данный модуль предназначен для определения географических данных по IP адресу.
Используются текстовые базы сервиса гео-локации ipgeobase.ru, которые преобразуются в бинарный формат для оптимизации поиска., (*1)
Installation
Composer
Вы можете использовать Composer для автоматизированного процесса установки:, (*2)
$ php composer.phar require cimus/geo-budle
или вручную добавте ссылку в ваш файл composer.json
и запустить$ PHP composer.phar update
:, (*3)
{
"require" : {
"cimus/geo-budle": "^1.0"
},
}
Usage
Перед первым использованием необходимо инициализировать БД, для этого нужно запустить команду, (*4)
php app/console cimus:geo:update
Note. Данную команду можно повесить на крон и запускать с периодичностью 1 раз в неделю. Данные обнавляются каждый день., (*5)
Определение географических данных, (*6)
```php, (*7)
$info = $this->get('cimus.geo')->search('176.121.128.1');, (*8)
print_r($info);, (*9)
Array
(
[country] => RU
[city] => Чебоксары
[region] => Республика Чувашия
[district] => Приволжский федеральный округ
[latitude] => 56.137451
[longitude] => 47.244030
[ip_start] => 176.121.128.0
[ip_stop] => 176.121.191.255
), (*10)
> **Note.** Как видно из примера, доступен сервис cimus.geo который выполняет поиск данных о IP адресе
Получение списка всех населёных пунктов, которые содержаться в БД
```php
$list = $this->get('cimus.geo')->listCity();
print_r($list);