Advertisement
rusday14

Radius PHP

Dec 5th, 2021
1,124
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.46 KB | None | 0 0
  1. date_default_timezone_set('Asia/Jakarta');
  2.            
  3.             function distance($lat1, $lon1, $lat2, $lon2, $unit) {
  4.                 if (($lat1 == $lat2) && ($lon1 == $lon2)) {
  5.                     return 0;
  6.                 }else{
  7.                     $theta = $lon1 - $lon2;
  8.                     $dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) +  cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta));
  9.                     $dist = acos($dist);
  10.                     $dist = rad2deg($dist);
  11.                     $miles = $dist * 60 * 1.1515;
  12.                     $unit = strtoupper($unit);
  13.  
  14.                     if ($unit == "K") {
  15.                       return ($miles * 1.609344);
  16.                     } else if ($unit == "N") {
  17.                       return ($miles * 0.8684);
  18.                     } else {
  19.                       return $miles;
  20.                     }
  21.                 }
  22.             }
  23.            
  24.             $latitude       = -7.323501;
  25.             $longitude      = 112.741151;
  26.             $jarak_max      = 40;
  27.             $lat2           = -7.324446;
  28.             $lon2           = 112.746595;
  29.             $lat1           = $latitude;
  30.             $lon1           = $longitude;
  31.             $kilometer      = distance($lat1,$lon1,$lat2,$lon2,"K");
  32.             $meter          = floor($kilometer*1000);
  33.             $work_location  = "Pusat";
  34.             $timestamp      = date('Y-m-d H:i:s');
  35.            
  36.             if(($meter>$jarak_max)):
  37.                 $data[0]['value']       = 2;
  38.                 $data[0]['messages']    = 'Gagal - Melewati Maksimum Jarak Absen !';
  39.                 $data[0]['waktuserver'] = $timestamp;      
  40.                 $data[0]['jml_dist']    = $meter;
  41.                 echo json_encode($data);
  42.             else:
  43.                 $data[0]['value']       = 1;
  44.                 $data[0]['messages']    = 'Berhasil - Anda diperbolehkan absen !';
  45.                 $data[0]['waktuserver'] = $timestamp;      
  46.                 $data[0]['jml_dist']    = $meter;
  47.                 echo json_encode($data);
  48.             endif; 
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement