Menghitung Jarak Antara 2 Koordinat Peta Dengan PHP

Selamat pagi semuanya, kita ketemu lagi disini 🙂 kali ini aku mau coba berbagi mengenai bagaimana cara menghitung jarak antara dua koordinat (gabungan antara latitude dan longitude) yang didapat dari Google Map dalam satuan Km (Kilometer) menggunakan script PHP. Oke langsung saja ya, beginilah bunyinya :

## formula untuk menghitung jarak antara dua koordinat
## rumus / formula ini merupakan hasil konversi dari rumus baku
## dalam hal pengukuran jarak "great-circle"
function rad($x){ return $x * M_PI / 180; }
function distHaversine($coord_a, $coord_b){
	# jarak kilometer dimensi (mean radius) bumi
	$R = 6371;
	$coord_a = explode(",",$coord_a);
	$coord_b = explode(",",$coord_b);
	$dLat = rad(($coord_b[0]) - ($coord_a[0]));
	$dLong = rad($coord_b[1] - $coord_a[1]);
	$a = sin($dLat/2) * sin($dLat/2) + cos(rad($coord_a[0])) * cos(rad($coord_b[0])) * sin($dLong/2) * sin($dLong/2);
	$c = 2 * atan2(sqrt($a), sqrt(1-$a));
	$d = $R * $c;
	# hasil akhir dalam satuan kilometer
	return number_format($d, 0, '.', ',');
}

## cara penggunaannya
## contoh ada 2 koordinat (latitude dan longitude)
$a = "-6.195168,106.769012";
$b = "-6.159617,106.839523";
print distHaversine($a, $b);

4 thoughts on “Menghitung Jarak Antara 2 Koordinat Peta Dengan PHP

Leave a Reply