[ad_1]
أهلاً
أقوم بإنشاء برنامج لشركة سيارات الأجرة وأريد حساب المسافة من نقطة الالتقاط إلى نقطة النزول وسوف توفر الأجرة. كيف يمكنني تحقيق ذلك باستخدام PHP
ما حاولت:
لقد حاولت بالفعل استخدام distance api ولكنه لا يعمل بالنسبة لي
الحل 1
بافتراض أنك تستخدم واجهة برمجة تطبيقات مصفوفة المسافة (وليس واجهة برمجة تطبيقات الاتجاهات)، فيجب أن يكون نموذج الطلب كما يلي:
https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
ويجب أن يبدو الكود الخاص بك كما يلي:
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
من الواضح أنك تحتاج إلى استبدال “YOUR_API_KEY” بمفتاح API الخاص بك من Google والذي تحتاج إلى إعداد حساب فواتير له Maps Javascript API
ممكن. يتم وصف المجموعة الكاملة من المعلمات الاختيارية أدناه. ستتلقى ردًا بتنسيق JSON (أو XML إذا قمت باستبداله json?
مع xml?
التي تحتاج إلى تحليل. يظهر أدناه مثال لبعض أكواد PHP لتحليل طلب Distance Matrix API. جميع المعلومات التي تحتاجها يمكن العثور عليها في طلب واستجابة API مصفوفة المسافة | جوجل للمطورين[^].
<?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"; } ?>
طلب واجهة برمجة تطبيقات مصفوفة المسافة:
https://maps.googleapis.com/maps/api/distancematrix/outputFormat?parameters
أين outputFormat
قد يكون إما json
أو xml
.
و parameters
يشمل :
origins
نقطة البداية لحساب مسافة السفر والوقت. يمكنك توفير موقع واحد أو أكثر في شكل عنوان، أو إحداثيات خطوط الطول/العرض، أو معرف المكان.
destinations
واحد أو أكثر من المواقع التي لحساب مسافة السفر والوقت.
mode
(خياري)
يحدد وسيلة النقل. تشمل الخيارات القيادة والمشي وركوب الدراجات والعبور.
units
(خياري)
يحدد نظام الوحدة المطلوب استخدامه عند التعبير عن المسافة كنص. تشمل الخيارات متري وإمبراطوري.
departure_time
(خياري)
يحدد وقت المغادرة المطلوب كعدد صحيح بالثواني منذ منتصف ليل 1 يناير 1970 بالتوقيت العالمي المنسق.
traffic_model
(خياري)
يحدد الافتراضات التي سيتم استخدامها عند حساب الوقت في حركة المرور. تتضمن الخيارات أفضل التخمينات، والتشاؤم، والتفاؤل.
مايك
[ad_2]
コメント