geoip_db_filename
(PECL geoip >= 1.0.1)
geoip_db_filename — Возвращает имя файла соответствующей базы GeoIP
Описание
$database
)Функция geoip_db_filename() возвращает имя файла соответствующей базы GeoIP.
Функция не определяет, существует ли файл на диске, только указывает путь, по которому библиотека ищет файл базы.
Список параметров
-
database
-
Тип базы определяется целым числом (integer). Вы можете использовать разнообразные константы, определённые в этом расширении (т.е.: GEOIP_*_EDITION).
Возвращаемые значения
Возвращает имя файла соответствующей базы, или NULL
при ошибке.
Примеры
Пример #1 Пример использованияgeoip_db_filename()
Пример отображения имени файла текущей базы в виде строки.
<?php
print geoip_db_filename(GEOIP_COUNTRY_EDITION);
?>
Результат выполнения данного примера:
/usr/share/GeoIP/GeoIP.dat
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Другие базовые расширения
- Geo IP Location
- geoip_asnum_by_name
- geoip_continent_code_by_name
- geoip_country_code_by_name
- geoip_country_code3_by_name
- geoip_country_name_by_name
- geoip_database_info
- geoip_db_avail
- geoip_db_filename
- geoip_db_get_all_info
- geoip_domain_by_name
- geoip_id_by_name
- geoip_isp_by_name
- geoip_netspeedcell_by_name
- geoip_org_by_name
- geoip_record_by_name
- geoip_region_by_name
- geoip_region_name_by_code
- geoip_setup_custom_directory
- geoip_time_zone_by_country_and_region
Коментарии
To quickly know which databases are available on your system:
<?php
$cst = array(
'GEOIP_COUNTRY_EDITION' => GEOIP_COUNTRY_EDITION,
'GEOIP_REGION_EDITION_REV0' => GEOIP_REGION_EDITION_REV0,
'GEOIP_CITY_EDITION_REV0' => GEOIP_CITY_EDITION_REV0,
'GEOIP_ORG_EDITION' => GEOIP_ORG_EDITION,
'GEOIP_ISP_EDITION' => GEOIP_ISP_EDITION,
'GEOIP_CITY_EDITION_REV1' => GEOIP_CITY_EDITION_REV1,
'GEOIP_REGION_EDITION_REV1' => GEOIP_REGION_EDITION_REV1,
'GEOIP_PROXY_EDITION' => GEOIP_PROXY_EDITION,
'GEOIP_ASNUM_EDITION' => GEOIP_ASNUM_EDITION,
'GEOIP_NETSPEED_EDITION' => GEOIP_NETSPEED_EDITION,
'GEOIP_DOMAIN_EDITION' => GEOIP_DOMAIN_EDITION,
);
foreach ($cst as $k=>$v) {
echo $k.': '.geoip_db_filename($v).' '.(geoip_db_avail($v) ? 'Available':'').'<br>';
}
?>
The only drawback of the PECL extension with respect to a pure PHP implementation is that you cannot select yourself where the database is. So, if you get a new version of the database, you need to put in the standard place and you may need root access to do so.