показать адрес от широты и долготы

У меня есть запрос, чтобы показать latlong, как это:

Latitude : <?=$post_search['lat'];?>
Long Latitude : <?=$post_search['long'];?>

образец результата:

Latitude : -7.966620399999998
Long Latitude : 112.63263210000002

Как я могу создать функцию для отображения адреса на основе запроса:

<?=$post_search['lat'];?>
<?=$post_search['long'];?>

мой код использует эту библиотеку: смотри в пастбине

0

Решение

Я не знаю вашу библиотеку. Но это делают просто без каких-либо библиотек.
Вы должны использовать геокод Google.

это простой запрос

http://maps.googleapis.com/maps/api/geocode/json?latlng=44.4647452,7.3553838&sensor=true

вам нужно установить lat lng в вашем запросе и запустите это, после запроса вы анализируете JSON.

пример для php:

const GOOGLE_MAPS_URL = 'http://maps.googleapis.com/maps/api/geocode/json';

function getUrlLatLng( $latLng) {
$queryString =  http_build_query(['latlng' => $latLng,'sensor'=> true]);
return GOOGLE_MAPS_URL . '?' .  $queryString;
}

function getData($lat, $lng) {
$latLng = implode(',',[$lat, $lng]);
$url = getUrlLatLng($latLng);
return json_decode(file_get_contents($url));
}

function parseAddress($result) {

return ($result[0]->formatted_address); //this parse address ass field you need;
}

function getAddress($lat, $lng) {
$address = (array)@getData($lat, $lng);

if(empty((array)@$address['results'])) {
throw new Exception('Not result');
}

return $address['results'];
}

function getFullAddress($lat, $lng) {
$address = getAddress($lat, $lng);
return parseAddress($address);
}

$result = getFullAddress(-7.966620399999998, 112.63263210000002);

echo $result;
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]