|
Server IP : 2a02:4780:3:2287:0:3736:a38e:8 / Your IP : 216.73.216.24 Web Server : LiteSpeed System : Linux sg-nme-web2187.main-hosting.eu 5.14.0-611.54.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 6 18:03:03 EDT 2026 x86_64 User : u926327694 ( 926327694) PHP Version : 7.4.33 Disable Function : system, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail MySQL : OFF | cURL : ON | WGET : ON | Perl : OFF | Python : OFF Directory (0777) : /home/u926327694/domains/smsoft.in/public_html/mda/../smsoft-imges/../ |
| [ Home ] | [ C0mmand ] | [ Upload File ] |
|---|
<?php
/*function getDistance($lat1, $lon1, $lat2, $lon2, $unit = 'km')
{
$earthRadius = 6371; // Radius of Earth in KM
$dLat = deg2rad($lat2 - $lat1);
$dLon = deg2rad($lon2 - $lon1);
$a = sin($dLat / 2) * sin($dLat / 2) +
cos(deg2rad($lat1)) * cos(deg2rad($lat2)) *
sin($dLon / 2) * sin($dLon / 2);
$c = 2 * atan2(sqrt($a), sqrt(1 - $a));
$distance = $earthRadius * $c;
switch ($unit) {
case 'm':
return $distance * 1000; // Meters
case 'mile':
return $distance * 0.621371; // Miles
default:
return $distance; // Kilometers
}
}
$lat1 = 22.2873822103603;
$lon1 = 70.81028732937214;
$lat2 = 21.523839182433587;
$lon2 = 70.45683028925237;
echo "Distance: " . round(getDistance($lat1, $lon1, $lat2, $lon2, 'km'), 2) . " KM";
echo "<br>";
echo "Distance: " . round(getDistance($lat1, $lon1, $lat2, $lon2, 'm'), 2) . " Meters";*/
function getRoadDistance($originLat, $originLng, $destLat, $destLng)
{
$url = "https://router.project-osrm.org/route/v1/driving/"
. $originLng . "," . $originLat . ";"
. $destLng . "," . $destLat
. "?overview=false";
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 30,
CURLOPT_SSL_VERIFYPEER => false
]);
$response = curl_exec($ch);
if (curl_errno($ch)) {
return [
'status' => false,
'message' => curl_error($ch)
];
}
curl_close($ch);
$data = json_decode($response, true);
if (!isset($data['routes'][0])) {
return [
'status' => false,
'message' => 'Route not found.'
];
}
$route = $data['routes'][0];
return [
'status' => true,
'distance_m' => $route['distance'],
'distance_km' => round($route['distance'] / 1000, 2),
'duration_sec' => $route['duration'],
'duration_min' => round($route['duration'] / 60, 1),
'duration_hr' => gmdate("H:i:s", $route['duration'])
];
}
$busLat = 22.2873822103603;
$busLng = 70.81028732937214;
$schoolLat = 21.523839182433587;
$schoolLng = 70.45683028925237;
$result = getRoadDistance($busLat, $busLng, $schoolLat, $schoolLng);
if ($result['status']) {
echo "Road Distance : " . $result['distance_km'] . " KM<br>";
echo "Distance (Meters) : " . $result['distance_m'] . "<br>";
echo "Travel Time : " . $result['duration_min'] . " Minutes<br>";
echo "Duration : " . $result['duration_hr'];
} else {
echo "Error : " . $result['message'];
}
?>