我们如何将纬度和经度转换为网站中的地址?

时间:2016-12-26 09:50:49

标签: javascript html latitude-longitude

我有一个API,它提供纬度和经度,我希望根据值来获取地点(城市,区域等)的地址。

假设网站如http://ip-api.com/php/2.50.153.139,如果我们提供该位置的IP,它将给出我们所在位置的名称。 json输出将如下:

a:14:{s:5:"query";s:12:"2.50.153.139";s:10:"regionName";s:9:"Abu Dhabi";s:3:"lat";d:24.466699600219727;s:3:"org";s:39:"Emirates Telecommunications Corporation";s:3:"zip";s:0:"";s:2:"as";s:24:"AS5384 Emirates Internet";s:6:"status";s:7:"success";s:7:"country";s:20:"United Arab Emirates";s:4:"city";s:9:"Abu Dhabi";s:3:"lon";d:54.36669921875;s:8:"timezone";s:10:"Asia/Dubai";s:3:"isp";s:39:"Emirates Telecommunications Corporation";s:11:"countryCode";s:2:"AE";s:6:"region";s:2:"AZ";}

但在mu情况下,我有纬度,经度,我想要区域名称。

我需要使用php或js。我可以这样做吗?

3 个答案:

答案 0 :(得分:0)

包含此脚本 - <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>

然后: -

 <script type="text/javascript">
        function GetAddress() {
            var lat = parseFloat(document.getElementById("#yourinputlat").value);
            var lng = parseFloat(document.getElementById("#yourinputlon").value);
            var latlng = new google.maps.LatLng(lat, lng);
            var geocoder = geocoder = new google.maps.Geocoder();
            geocoder.geocode({ 'latLng': latlng }, function (results, status) {
                if (status == google.maps.GeocoderStatus.OK) {
                    if (results[1]) {
                        alert("Location: " + results[1].formatted_address);
                    }
                }
            });
        }
    </script>

答案 1 :(得分:0)

使用以下网址和数据制作ajax - &gt; lat和long

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

答案 2 :(得分:0)

你应该尝试这个,你正在寻找谷歌(或其他任何人)reverse geocoding service.