PHPCon Poland 2024

geoip_record_by_name

(PECL geoip >= 0.2.0)

geoip_record_by_nameВозвращает подробную информацию об адресе, найденном в базе GeoIP

Описание

geoip_record_by_name(string $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" -- Широта, число с плавающей точкой (float) без знака.
  • "longitude" -- Долгота, число с плавающей точкой (float) без знака.
  • "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
)

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top