getDataResult
Описание и параметры
abstract public function getDataResult( $ip, $lang = '' );
Нестатический абстрактный метод возвращает результат с данными геолокации - класс \Bitrix\Main\Service\GeoIp\Result, если она определена или null в противном случае.
Параметр | Описание | С версии |
---|---|---|
ip | IP адрес | |
lang | Идентификатор языка |
Примеры
Получить всю доступную информацию сразу:
$geoResult = GeoIp\Manager::getDataResult('92.50.195.50'); if($geoResult) { if($geoResult->isSuccess()) var_dump($geoResult->getGeoData()); elseif(!$geoResult->isSuccess()) echo "Ошибка: ".implode("
\n", $geoResult->getErrorMessages()); } else { echo 'Нет данных для данного IP - адреса'; }
В результате получим объект - структуру данных \Bitrix\Main\Service\GeoIp\Data
:
>>object(Bitrix\Main\Service\GeoIp\Data)[97] public 'ip' => string '92.50.195.50' (length=12) public 'lang' => string 'en' (length=2) public 'countryName' => string 'Russia' (length=6) public 'regionName' => string 'Moskva' (length=6) public 'subRegionName' => GeoIp\Manager::INFO_NOT_AVAILABLE public 'cityName' => string 'Moscow' (length=6) public 'countryCode' => string 'RU' (length=2) public 'regionCode' => string 'RU-MOW' (length=6) public 'zipCode' => GeoIp\Manager::INFO_NOT_AVAILABLE public 'latitude' => float 55.75222 public 'longitude' => float 37.61556 public 'timezone' => string 'Europe/Moscow' (length=13) public 'asn' => GeoIp\Manager::INFO_NOT_AVAILABLE public 'ispName' => GeoIp\Manager::INFO_NOT_AVAILABLE public 'organizationName' => GeoIp\Manager::INFO_NOT_AVAILABLE public 'handlerClass' => string 'Bitrix\Main\Service\GeoIp\SypexGeo' (length=34)
Если информации нет - вернётся GeoIp\Manager::INFO_NOT_AVAILABLE
.
Если нам нужен строго определенный язык и определенные поля:
$geoResult = GeoIp\Manager::getDataResult('92.50.195.50', 'ru', array('countryName', 'cityName'));
© «Битрикс», 2001-2024, «1С-Битрикс», 2024