2010-01-13 13 views

Trả lời

33

Bạn cần phải sử dụng phương pháp getLocations trên đối tượng GClientGeocoder trong Google Maps API

var point = new GLatLng (43,-75); 
var geocoder = new GClientGeocoder(); 
geocoder.getLocations (point, function(result) { 
    // access the address from the placemarks object 
    alert (result.address); 
    }); 

EDIT: Ok. Bạn đang làm điều này phía máy chủ công cụ. Điều này có nghĩa là bạn cần sử dụng số HTTP Geocoding service. Để làm điều này, bạn sẽ cần phải thực hiện một yêu cầu HTTP bằng cách sử dụng định dạng URL được mô tả trong bài viết được liên kết. Bạn có thể phân tích cú pháp phản hồi HTTP và lấy địa chỉ:

// set your API key here 
$api_key = ""; 
// format this string with the appropriate latitude longitude 
$url = 'http://maps.google.com/maps/geo?q=40.714224,-73.961452&output=json&sensor=true_or_false&key=' . $api_key; 
// make the HTTP request 
$data = @file_get_contents($url); 
// parse the json response 
$jsondata = json_decode($data,true); 
// if we get a placemark array and the status was good, get the addres 
if(is_array($jsondata)&& $jsondata ['Status']['code']==200) 
{ 
     $addr = $jsondata ['Placemark'][0]['address']; 
} 

N.B.Google Maps terms of service tuyên bố rõ ràng rằng dữ liệu mã hóa địa lý mà không đặt kết quả trên Google Map bị cấm.

+0

Cảm ơn. Tôi cần mã trong PHP vì im sẽ hiển thị địa chỉ vĩ độ và kinh độ trong các báo cáo dưới dạng bản ghi ... chỉ cần tôi .. – Murugesh

+8

sếp, một phần của lập trình viên là khả năng trừu tượng mã nguồn cho ngôn ngữ của bạn. Api vị trí của Google về bản chất là giống nhau trong tất cả các ngôn ngữ được sử dụng (bao gồm cả Cú pháp GLatLng) –

+0

@Cannonade: Tôi không muốn trả lời chỉ để bao gồm mã mẫu php. Chỉ cần một gợi ý: có rất nhiều lớp học php wrapper cho api javascript ra khỏi đó. –

Các vấn đề liên quan