cimus/geo-bundle

Symfony2 GeoBundle

Installs: 80

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 1

Open Issues: 0

Type:symfony-bundle

v1.0.1 2016-01-27 17:09 UTC

This package is not auto-updated.

Last update: 2024-12-21 18:47:50 UTC


README

Данный модуль предназначен для определения географических данных по IP адресу. Используются текстовые базы сервиса гео-локации ipgeobase.ru, которые преобразуются в бинарный формат для оптимизации поиска.

Installation

Composer

Вы можете использовать Composer для автоматизированного процесса установки:

$ php composer.phar require cimus/geo-budle

или вручную добавте ссылку в ваш файл composer.json и запустить $ PHP composer.phar update:

{
    "require" : {
        "cimus/geo-budle": "^1.0"
    },
}

Usage

Перед первым использованием необходимо инициализировать БД, для этого нужно запустить команду

php app/console cimus:geo:update

Note. Данную команду можно повесить на крон и запускать с периодичностью 1 раз в неделю. Данные обнавляются каждый день.

Определение географических данных

$info =  $this->get('cimus.geo')->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
)

Note. Как видно из примера, доступен сервис cimus.geo который выполняет поиск данных о IP адресе

Получение списка всех населёных пунктов, которые содержаться в БД

$list = $this->get('cimus.geo')->listCity();

print_r($list);