/** * 計算兩組經緯度座標間的距離 * params:lat1緯度1,lng1經度1,lat2緯度2,lng2經度2,len_type(1:m|2:km); * Echo GetDistance($lat1,$lng1,$lat2,$lng2).'米'; */ function GetDistance($lat1,$lng1,$lat2,$lng2,$len_type=1,$decimal=2){ $EARTH_RADIUS=6378.137; //地球半徑,假設地球是規則的球體 $PI=3.1415926; //圓周率 $radLat1 = $lat1 * $PI / 180.0; $radLat2 = $lat2 * $PI / 180.0; $a = $radLat1 - $radLat2; $b = ($lng1 * $PI / 180.0) - ($lng2 * $PI / 180.0); $s = 2 * asin(sqrt(pow(sin($a/2),2) + cos($radLat1) * cos($radLat2) * pow(sin($b/2),2))); $s = $s * $EARTH_RADIUS; $s = round($s*1000); if($len_type>1){ $s /= 1000; } return round($s,$decimal); }
위 내용은 내용의 측면을 포함하여 두 세트의 경도 및 위도 좌표 사이의 거리 계산을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.