[ad_1]
CHÀO
Tôi đang xây dựng một phần mềm cho công ty Taxi và tôi muốn Tính khoảng cách từ điểm đón đến điểm trả khách và sẽ cung cấp giá vé. làm cách nào tôi có thể đạt được điều này bằng cách sử dụng PHP
Những gì tôi đã thử:
tôi đã thử sử dụng distance api nhưng nó không hiệu quả với tôi
Giải pháp 1
Giả sử rằng bạn đang sử dụng API ma trận khoảng cách (chứ không phải API chỉ đường) thì hình thức yêu cầu sẽ là:
https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
Và mã của bạn sẽ trông giống như thế này:
https://maps.googleapis.com/maps/api/distancematrix/json?destinations=New%20York%20City%2C%20NY&origins=Washington%2C%20DC%7CBoston&units=imperial&key=YOUR_API_KEY
Rõ ràng là bạn cần thay thế “YOUR_API_KEY” bằng khóa API từ Google mà bạn cần thiết lập tài khoản thanh toán và Maps Javascript API
đã bật. Tập hợp đầy đủ các tham số tùy chọn được mô tả dưới đây. Bạn sẽ nhận được phản hồi ở định dạng JSON (hoặc XML nếu bạn thay thế json?
với xml?
mà bạn cần phân tích. Một ví dụ về một số mã PHP để phân tích yêu cầu API Ma trận khoảng cách được hiển thị bên dưới. Tất cả thông tin bạn cần có thể được tìm thấy tại Yêu cầu và phản hồi API ma trận khoảng cách | Google dành cho nhà phát triển[^].
<?php // We need to get the JSON response into a string variable $jsonResponse // First assign the URL of the Distance Matrix API request to a string $url = 'href="https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters'; // Use file_get_contents() to send a GET request to the URL $jsonResponse = file_get_contents($url); // Decode the JSON response $data = json_decode($jsonResponse, true); // Check if the status is OK if ($data['status'] == 'OK') { // Loop through each row (origin-destination pair) foreach ($data['rows'] as $row) { // Loop through each element (information about the origin-destination pair) foreach ($row['elements'] as $element) { // Check if the status is OK if ($element['status'] == 'OK') { // Get the distance and duration $distance = $element['distance']['text']; $duration = $element['duration']['text']; // Print the distance and duration echo "Distance: $distance\n"; echo "Duration: $duration\n"; } else { echo "Error: " . $element['status'] . "\n"; } } } } else { echo "Error: " . $data['status'] . "\n"; } ?>
Yêu cầu API ma trận khoảng cách:
https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
Ở đâu outputFormat
Có thể là json
hoặc xml
.
Và parameters
bao gồm :
origins
Điểm khởi đầu để tính khoảng cách và thời gian di chuyển. Bạn có thể cung cấp một hoặc nhiều vị trí dưới dạng địa chỉ, tọa độ vĩ độ/kinh độ hoặc ID địa điểm.
destinations
Một hoặc nhiều địa điểm để tính khoảng cách và thời gian di chuyển.
mode
(không bắt buộc)
Chỉ định phương thức vận chuyển. Các lựa chọn bao gồm lái xe, đi bộ, đi xe đạp và chuyển tuyến.
units
(không bắt buộc)
Chỉ định hệ thống đơn vị sẽ sử dụng khi biểu thị khoảng cách dưới dạng văn bản. Các tùy chọn bao gồm số liệu và hệ đo lường Anh.
departure_time
(không bắt buộc)
Chỉ định thời gian khởi hành mong muốn dưới dạng số nguyên tính bằng giây kể từ nửa đêm, ngày 1 tháng 1 năm 1970 UTC.
traffic_model
(không bắt buộc)
Chỉ định các giả định sẽ sử dụng khi tính toán thời gian tham gia giao thông. Các tùy chọn bao gồm best_guess, bi quan và lạc quan.
Mike
[ad_2]
コメント