Làm cách nào để hiển thị vị trí trên Google Maps bằng vĩ độ và kinh độ trong php?
Chúng tôi đã tạo một lớp trợ giúp để nhanh chóng bắt đầu sử dụng Google Geocoding API. Hướng dẫn rất đơn giản. Đặt tệp lớp (bạn có thể sao chép nó bên dưới từ ý chính) ở đâu đó trong dự án của bạn. Cập nhật đường dẫn đến lớp trợ giúp, địa chỉ và khóa API trong mã bên dưới Show
Trang này mô tả dịch vụ phía máy khách có sẵn với Maps JavaScript API. Nếu bạn muốn làm việc với các dịch vụ web của Google Maps trên máy chủ của mình, hãy xem Nút. js Ứng dụng khách cho Dịch vụ Google Maps. Trang tại liên kết đó cũng giới thiệu Máy khách Java, Máy khách Python và Máy khách Go cho Dịch vụ Google Maps Tổng quanNgoài ra, hãy xem Tham chiếu API JavaScript của Maps. mã hóa địa lýMã hóa địa lý là quá trình chuyển đổi địa chỉ (như "1600 Amphitheatre Parkway, Mountain View, CA") thành tọa độ địa lý (như vĩ độ 37. 423021 và kinh độ -122. 083739), mà bạn có thể sử dụng để đánh dấu hoặc định vị bản đồ Mã hóa địa lý ngược là quá trình chuyển đổi tọa độ địa lý thành địa chỉ mà con người có thể đọc được (xem phần ) Bạn cũng có thể sử dụng trình mã hóa địa lý để tìm địa chỉ cho một API JavaScript của Maps cung cấp một lớp Trình mã hóa địa lý để mã hóa địa lý và đảo ngược mã hóa địa lý một cách linh hoạt từ đầu vào của người dùng. Thay vào đó, nếu bạn muốn mã hóa địa lý các địa chỉ tĩnh, đã biết, hãy xem dịch vụ web Mã hóa địa lý Bắt đầuTrước khi sử dụng dịch vụ Mã hóa địa lý trong API JavaScript của Maps, trước tiên hãy đảm bảo rằng API mã hóa địa lý được bật trong Google Cloud Console, trong cùng một dự án mà bạn đã thiết lập cho API JavaScript của Maps Để xem danh sách các API đã bật của bạn
Giá cả và chính sáchđịnh giáCó hiệu lực từ ngày 16 tháng 7 năm 2018, gói giá mới trả theo mức sử dụng đã có hiệu lực cho Bản đồ, Tuyến đường và Địa điểm. Để tìm hiểu thêm về giới hạn sử dụng và định giá mới cho việc bạn sử dụng dịch vụ Mã hóa địa lý JavaScript, hãy xem phần Sử dụng và thanh toán cho API mã hóa địa lý chính sáchViệc sử dụng dịch vụ Mã hóa địa lý phải tuân theo các chính sách được mô tả cho API mã hóa địa lý Yêu cầu mã hóa địa lýViệc truy cập dịch vụ Mã hóa địa lý là không đồng bộ, do API Google Maps cần thực hiện lệnh gọi đến máy chủ bên ngoài. Vì lý do đó, bạn cần chuyển một phương thức gọi lại để thực thi sau khi hoàn thành yêu cầu. Phương thức gọi lại này xử lý (các) kết quả. Lưu ý rằng trình mã hóa địa lý có thể trả về nhiều kết quả Bạn truy cập dịch vụ mã hóa địa lý API Google Maps trong mã của mình thông qua đối tượng hàm tạo results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }3. Phương thức results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }4 khởi tạo một yêu cầu tới dịch vụ mã hóa địa lý, chuyển cho nó một đối tượng results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }5 có chứa các thuật ngữ đầu vào và một phương thức gọi lại để thực thi khi nhận được phản hồi Đối tượng results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }5 theo nghĩa đen chứa các trường sau { address: string, location: LatLng, placeId: string, bounds: LatLngBounds, componentRestrictions: GeocoderComponentRestrictions, region: string } Thông số bắt buộc. Bạn phải cung cấp một và chỉ một trong các trường sau
thông số tùy chọn
Phản hồi mã hóa địa lýDịch vụ Mã hóa địa lý yêu cầu phương thức gọi lại để thực thi khi truy xuất kết quả của trình mã hóa địa lý. Cuộc gọi lại này phải truyền hai tham số để giữ mã var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }8 và mã var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }9, theo thứ tự đó Kết quả mã hóa địa lýĐối tượng results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }80 đại diện cho một kết quả mã hóa địa lý duy nhất. Yêu cầu mã địa lý có thể trả về nhiều đối tượng kết quả results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } } Những lĩnh vực này được giải thích dưới đây
Các địa chỉ sẽ được Trình mã hóa địa lý trả về bằng cài đặt ngôn ngữ ưa thích của trình duyệt hoặc ngôn ngữ được chỉ định khi tải API JavaScript bằng tham số results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }98. (Để biết thêm thông tin, xem Bản địa hóa. ) Các loại địa chỉ và các loại thành phần địa chỉMảng results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }81 trong biểu thị loại địa chỉ. Mảng results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }81 cũng có thể được trả về trong a để chỉ ra loại của thành phần địa chỉ cụ thể. Địa chỉ được bộ mã hóa địa lý trả về có thể có nhiều loại; . Ví dụ: nhiều thành phố được gắn thẻ loại results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }01 và results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }02 Các loại sau đây được bộ mã hóa địa lý hỗ trợ và trả về ở cả loại địa chỉ và loại thành phần địa chỉ
Danh sách các loại trống cho biết không có loại nào được biết đến cho thành phần địa chỉ cụ thể, ví dụ: Lieu-dit ở Pháp Ngoài những điều trên, các thành phần địa chỉ có thể bao gồm các loại bên dưới Ghi chú. Danh sách này không đầy đủ và có thể thay đổi
Mã trạng tháiMã var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }9 có thể trả về một trong các giá trị sau
Trong ví dụ này, chúng tôi mã hóa địa lý một địa chỉ và đặt điểm đánh dấu ở các giá trị kinh độ và vĩ độ được trả về. Lưu ý rằng trình xử lý được chuyển dưới dạng hàm ẩn danh theo nghĩa đen ________số 8Xem ví dụ Xu hướng khung nhìnBạn có thể hướng dẫn Dịch vụ mã hóa địa lý ưu tiên kết quả trong một chế độ xem nhất định (được biểu thị dưới dạng hộp giới hạn). Bạn làm như vậy bằng cách đặt tham số var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }2 trong đối tượng results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }5 bằng chữ để xác định giới hạn của chế độ xem này. Lưu ý rằng xu hướng chỉ thích kết quả trong giới hạn; Ví dụ: mã địa lý cho "Winnetka" thường trả về vùng ngoại ô này của Chicago results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }8 Tuy nhiên, việc chỉ định tham số var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }2 xác định hộp giới hạn cho Thung lũng San Fernando của Los Angeles dẫn đến mã địa lý này trả về vùng lân cận có tên "Winnetka" ở vị trí đó results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }1 Xu hướng mã vùngBạn có thể đặt Dịch vụ mã hóa địa lý để trả về kết quả thiên về một khu vực cụ thể một cách rõ ràng bằng cách sử dụng tham số var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }6. Tham số này nhận mã vùng, được chỉ định dưới dạng thẻ phụ vùng Unicode gồm hai ký tự (không phải số). Các thẻ này ánh xạ trực tiếp tới các giá trị hai ký tự ccTLD ("miền cấp cao nhất") quen thuộc, chẳng hạn như "uk" trong "co. Anh" chẳng hạn. Trong một số trường hợp, thẻ var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }6 cũng hỗ trợ mã ISO-3166-1, mã này đôi khi khác với giá trị ccTLD (ví dụ: "GB" cho "Great Britain") Khi sử dụng tham số var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }6
Yêu cầu mã hóa địa lý có thể được gửi cho mọi miền trong đó ứng dụng Google Maps chính cung cấp mã hóa địa lý. Lưu ý rằng xu hướng chỉ thích kết quả cho một miền cụ thể; Ví dụ: mã địa lý cho "Toledo" trả về kết quả này vì miền mặc định cho Dịch vụ mã hóa địa lý được đặt thành Hoa Kỳ results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }9 Mã địa lý cho "Toledo" với trường var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }6 được đặt thành results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }22 (Tây Ban Nha) sẽ trả về thành phố Tây Ban Nha results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }0 Lọc thành phầnBạn có thể đặt Dịch vụ mã hóa địa lý để trả về kết quả địa chỉ được giới hạn ở một khu vực cụ thể bằng cách sử dụng bộ lọc thành phần. Chỉ định bộ lọc trong tham số. Các giá trị bộ lọc hỗ trợ các phương pháp sửa chính tả và đối sánh một phần giống như các yêu cầu mã hóa địa lý khác Trình mã hóa địa lý chỉ trả về các kết quả khớp với tất cả các bộ lọc thành phần. Nghĩa là, nó đánh giá các thông số kỹ thuật của bộ lọc là AND, không phải OR Bộ lọc thành phần bao gồm một hoặc nhiều mục sau
Ví dụ sau minh họa cách sử dụng tham số để lọc theo results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }07 và results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }27 results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }9 Mã hóa địa lý ngược (Tra cứu địa chỉ)Thuật ngữ mã hóa địa lý thường đề cập đến việc dịch một địa chỉ mà con người có thể đọc được thành một vị trí trên bản đồ. Quá trình thực hiện ngược lại, dịch một vị trí trên bản đồ thành địa chỉ mà con người có thể đọc được, được gọi là mã hóa địa lý ngược Thay vì cung cấp một văn bản results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }7, hãy cung cấp một cặp kinh độ/vĩ độ được phân tách bằng dấu phẩy trong tham số results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }8Ghi chú. Nếu bạn bao gồm tham số var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }5 trong yêu cầu thì tham số results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }8 sẽ bị bỏ qua Ví dụ sau mã hóa địa lý một giá trị kinh độ/vĩ độ và căn giữa bản đồ tại vị trí đó, hiển thị cửa sổ thông tin với địa chỉ được định dạng
thử mẫuStackblitz. com Mã Sandbox. io JSFiddle. mạng Google Cloud Shell Lưu ý rằng trong ví dụ trước, chúng tôi đã hiển thị kết quả đầu tiên bằng cách chọn results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }36. Trình mã hóa địa lý đảo ngược thường trả về nhiều hơn một kết quả. Địa chỉ được mã hóa địa lý không chỉ là địa chỉ bưu chính, mà là bất kỳ cách nào để đặt tên địa lý cho một vị trí. Ví dụ: khi mã hóa địa lý một điểm trong thành phố Chicago, điểm được mã hóa địa lý có thể được gắn nhãn là địa chỉ đường phố, thành phố (Chicago), tiểu bang của nó (Illinois) hoặc quốc gia (Hoa Kỳ). Tất cả đều là địa chỉ cho bộ mã hóa địa lý. Trình mã hóa địa lý ngược trả về tất cả các kết quả này Trình mã hóa địa lý ngược khớp với các thực thể chính trị (quốc gia, tỉnh, thành phố và vùng lân cận), địa chỉ đường phố và mã bưu điện Đây là một ví dụ về danh sách các địa chỉ mà truy vấn trên có thể trả về results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }0 Địa chỉ được trả về theo thứ tự phù hợp nhất đến ít nhất. Nói chung, địa chỉ chính xác hơn là kết quả nổi bật nhất, như trong trường hợp này. Lưu ý rằng chúng tôi trả về các loại địa chỉ khác nhau, từ địa chỉ đường phố cụ thể nhất đến các thực thể chính trị ít cụ thể hơn như vùng lân cận, thành phố, hạt, tiểu bang, v.v. Nếu bạn muốn khớp một địa chỉ tổng quát hơn, bạn có thể muốn kiểm tra trường results[]: { types[]: string, formatted_address: string, address_components[]: { short_name: string, long_name: string, postcode_localities[]: string, types[]: string }, partial_match: boolean, place_id: string, postcode_localities[]: string, geometry: { location: LatLng, location_type: GeocoderLocationType viewport: LatLngBounds, bounds: LatLngBounds } }37 Ghi chú. Mã hóa địa lý ngược không phải là một khoa học chính xác. Trình mã hóa địa lý sẽ cố gắng tìm vị trí có thể định địa chỉ gần nhất trong một dung sai nhất định Truy xuất Địa chỉ cho ID Địa điểmCung cấp một var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }1 để tìm địa chỉ cho một ID địa điểm nhất định. ID địa điểm là một mã định danh duy nhất có thể được sử dụng với các API Google khác. Ví dụ: bạn có thể cung cấp var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }1 do API Đường bộ trả về để lấy địa chỉ cho một điểm bị gãy. Để biết thêm thông tin về ID địa điểm, hãy xem tổng quan về ID địa điểm Khi bạn cung cấp var geocoder; var map; function initialize() { geocoder = new google.maps.Geocoder(); var latlng = new google.maps.LatLng(-34.397, 150.644); var mapOptions = { zoom: 8, center: latlng } map = new google.maps.Map(document.getElementById('map'), mapOptions); } function codeAddress() { var address = document.getElementById('address').value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == 'OK') { map.setCenter(results[0].geometry.location); var marker = new google.maps.Marker({ map: map, position: results[0].geometry.location }); } else { alert('Geocode was not successful for the following reason: ' + status); } }); }1, yêu cầu không được chứa bất kỳ trường nào sau đây
Ví dụ sau chấp nhận ID địa điểm, tìm địa chỉ tương ứng và căn giữa bản đồ tại vị trí đó. Nó cũng hiển thị một cửa sổ thông tin hiển thị địa chỉ được định dạng của địa điểm có liên quan Làm cách nào để có được vị trí bản đồ Google trong php?Hãy bắt đầu thêm Google Map bằng PHP . Nhận khóa API Google Map Chúng tôi sẽ tạo một div sẽ hiển thị bản đồ Chúng tôi sẽ tạo trình bao bọc API trong PHP sẽ nhận địa chỉ, vĩ độ và kinh độ được định dạng bằng tên Thành phố Làm cách nào để lấy địa chỉ vị trí hiện tại trong php?Phương thức getCurrentPosition() được sử dụng để lấy vị trí của khách truy cập và phương thức showLocation() được sử dụng để lấy địa chỉ của khách truy cập từ getLocation. tệp php sử dụng Ajax. Mã HTML . Sau khi nhận được vị trí của khách truy cập, địa chỉ sẽ được hiển thị trên trang web ( #location span). |