Получение геокординат по адресу
Задача: получить координаты по известному адресу
Решение: воспользуемся API Яндекс.Карты по геокодированию. К сожалению бесплатная версия ограничена 1000 запросов в сутки. Но это обходимо возможностью «растягивать» во времени заполнение БД
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
$address= urlencode($maddress->address); $rul="https://geocode-maps.yandex.ru/1.x/?geocode=".$address."&format=json&results=1&apikey=".$api_map; var_dump($rul); $ch = curl_init($rul); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); $res_curl=json_decode(curl_exec($ch)); if ($res_curl!=null){ if (isset($res_curl->response->GeoObjectCollection->featureMember[0]->GeoObject->Point->pos)){ $coors=$res_curl->response->GeoObjectCollection->featureMember[0]->GeoObject->Point->pos; $coors= explode(" ",$coors); var_dump($coors); } }; |