主頁 > 知識庫 > php兩點地理坐標距離的計算方法

php兩點地理坐標距離的計算方法

熱門標簽:亳州企業(yè)外呼系統(tǒng) 地圖標注怎么做商戶驗證 打開百度地圖標注 海南外呼系統(tǒng)方案 蘇州外呼系統(tǒng)有效果嗎 智能電銷語音機器人資訊 400 電話 辦理 兼職做地圖標注好賺錢嗎 山東電銷卡外呼系統(tǒng)原理是什么

本文實例為大家分享了php計算兩點地理坐標距離的具體代碼,供大家參考,具體內(nèi)容如下

功能:根據(jù)圓周率和地球半徑系數(shù)與兩點坐標的經(jīng)緯度,計算兩點之間的球面距離。

獲取兩點坐標距離:

?php
/**
 * 計算兩點地理坐標之間的距離
 * @param Decimal $longitude1 起點經(jīng)度
 * @param Decimal $latitude1 起點緯度
 * @param Decimal $longitude2 終點經(jīng)度 
 * @param Decimal $latitude2 終點緯度
 * @param Int   $unit    單位 1:米 2:公里
 * @param Int   $decimal  精度 保留小數(shù)位數(shù)
 * @return Decimal
 */
function getDistance($longitude1, $latitude1, $longitude2, $latitude2, $unit=2, $decimal=2){

  $EARTH_RADIUS = 6370.996; // 地球半徑系數(shù)
  $PI = 3.1415926;

  $radLat1 = $latitude1 * $PI / 180.0;
  $radLat2 = $latitude2 * $PI / 180.0;

  $radLng1 = $longitude1 * $PI / 180.0;
  $radLng2 = $longitude2 * $PI /180.0;

  $a = $radLat1 - $radLat2;
  $b = $radLng1 - $radLng2;

  $distance = 2 * asin(sqrt(pow(sin($a/2),2) + cos($radLat1) * cos($radLat2) * pow(sin($b/2),2)));
  $distance = $distance * $EARTH_RADIUS * 1000;

  if($unit==2){
    $distance = $distance / 1000;
  }

  return round($distance, $decimal);

}

// 起點坐標
$longitude1 = 113.330405;
$latitude1 = 23.147255;

// 終點坐標
$longitude2 = 113.314271;
$latitude2 = 23.1323;

$distance = getDistance($longitude1, $latitude1, $longitude2, $latitude2, 1);
echo $distance.'m'; // 2342.38m

$distance = getDistance($longitude1, $latitude1, $longitude2, $latitude2, 2);
echo $distance.'km'; // 2.34km

?>

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • php如何計算兩坐標點之間的距離
  • golang與php實現(xiàn)計算兩個經(jīng)緯度之間距離的方法
  • PHP安裝GeoIP擴展根據(jù)IP獲取地理位置及計算距離的方法
  • php實現(xiàn)計算百度地圖坐標之間距離的方法
  • PHP實現(xiàn)搜索地理位置及計算兩點地理位置間距離的實例
  • php計算兩個坐標(經(jīng)度,緯度)之間距離的方法
  • PHP計算百度地圖兩個GPS坐標之間距離的方法
  • PHP根據(jù)兩點間的經(jīng)緯度計算距離
  • PHP計算2點經(jīng)緯度之間的距離代碼

標簽:紹興 呼倫貝爾 安康 金華 溫州 萊蕪 清遠 綏化

巨人網(wǎng)絡(luò)通訊聲明:本文標題《php兩點地理坐標距離的計算方法》,本文關(guān)鍵詞  php,兩點,地理,坐標,距離,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《php兩點地理坐標距離的計算方法》相關(guān)的同類信息!
  • 本頁收集關(guān)于php兩點地理坐標距離的計算方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章