geoip_record_by_name
(PECL geoip >= 0.2.0)
geoip_record_by_name — Возвращает подробную информацию об адресе, найденном в базе GeoIP
Описание
$hostname
) : arrayФункция geoip_record_by_name() возвращает информацию об адресе, соответствующую имени хоста или IP адреса.
Функция доступна для бесплатной версии GeoLite City Edition и коммерческой GeoIP City Edition. Если необходимые базы отсутствует, выводится предупреждение.
Следующие имена ключей возвращаемого ассоциативного массива:
- "continent_code" -- Двухбуквенный код континента (с версии 1.0.4 с libgeoip 1.4.3 или более новой)
- "country_code" -- Двухбуквенный код страны (см. geoip_country_code_by_name())
- "country_code3" -- Трехбуквенный код страны (см. geoip_country_code3_by_name())
- "country_name" -- Название страны (см. geoip_country_name_by_name())
- "region" -- Код региона (например: CA для Калифорнии)
- "city" -- Город.
- "postal_code" -- Почтовый индекс, FSA или Zip-код
- "latitude" -- Широта, знаковое вещественное число (signed double).
- "longitude" -- Долгота, знаковое вещественное число (signed double).
- "dma_code" -- Код рыночной зоны (Designated Market Area, DMA), только для США и Канады
- "area_code" -- Код телефонной сети общего пользования (PSTN), например, 212
Список параметров
-
hostname
-
Имя хоста или IP-адрес, данные по которому должны быть получены.
Возвращаемые значения
Возвращает ассоциативный массив в случае успеха или false
,
если адрес не может быть найден в базе.
Список изменений
Версия | Описание |
---|---|
PECL geoip 1.0.4 | Добавлен код континента (continent_code) с GeoIP Library 1.4.3 или более новыми. |
PECL geoip 1.0.3 | Добавлен трехбуквенный код страны (country_code3) и название страны (country_name). |
Примеры
Пример #1 Пример использования geoip_record_by_name()
Выведет массив, содержащий запись о хосте example.com.
<?php
$record = geoip_record_by_name('www.example.com');
if ($record) {
print_r($record);
}
?>
Результат выполнения данного примера:
Array ( [continent_code] => NA [country_code] => US [country_code3] => USA [country_name] => United States [region] => CA [city] => Marina Del Rey [postal_code] => [latitude] => 33.9776992798 [longitude] => -118.435096741 [dma_code] => 803 [area_code] => 310 )