php計算兩個經緯度地點之間的距離

php計算兩個指定的經緯度地點之間的距離,這個在做計算給定某個地點的經緯度,計算其附近的商業區,以及給定地點與附近各商業區之間的距離的時候,還是用的到的。下面是具體的函數代碼:

 

/**
	 * 求兩個已知經緯度之間的距離,單位爲km
	 * @param lng1,lng2 經度
	 * @param lat1,lat2 緯度
	 * @return float 距離,單位爲km
	 **/
	public static function getDistance($lat1,$lng1,$lat2,$lng2){
		//將角度轉爲狐度
		$radLat1 = deg2rad($lat1);//deg2rad()函數將角度轉換爲弧度
		$radLat2 = deg2rad($lat2);
		$radLng1 = deg2rad($lng1);
		$radLng2 = deg2rad($lng2);
		$a = $radLat1 - $radLat2;
		$b = $radLng1 - $radLng2;
		$s = 2*asin(sqrt(pow(sin($a/2),2)+cos($radLat1)*cos($radLat2)*pow(sin($b/2),2)))*6371;
		return round($s,1);
	}

結果保留一位小數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章