php計算出兩個經緯度之間的距離(單位:米)

/*
 * 計算出兩個經緯度之間的距離(單位:米)
 * */
public function getdistanceAction()
{
    $lng1=117.27;  //經度1
    $lat1=31.86;   //緯度1
    $lng2=120.19;  //經度2
    $lat2=30.26;   //緯度2

    $EARTH_RADIUS = 6378137;   //地球半徑
    $RAD = pi() / 180.0;

    $radLat1 = $lat1 * $RAD;
    $radLat2 = $lat2 * $RAD;
    $a = $radLat1 - $radLat2;    // 兩點緯度差
    $b = ($lng1 - $lng2) * $RAD;  // 兩點經度差
    $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 * 10000) / 10000;
    print_r($s);   //正確答案:330518.674
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章