php實現(xiàn)計算百度地圖坐標(biāo)之間距離的方法
本文實例講述了php實現(xiàn)計算百度地圖坐標(biāo)之間距離的方法。分享給大家供大家參考,具體如下:
下面是網(wǎng)上的代碼,使用的時候需要進(jìn)行些許修改
第一個函數(shù)是獲得范圍,參數(shù)為緯度經(jīng)度半徑
第二個函數(shù)是計算坐標(biāo)距離
<?php
define('PI',3.1415926535898);
define('EARTH_RADIUS',6378.137);
//計算范圍,可以做搜索用戶
function GetRange($lat,$lon,$raidus){
//計算緯度
$degree = (24901 * 1609) / 360.0;
$dpmLat = 1 / $degree;
$radiusLat = $dpmLat * $raidus;
$minLat = $lat - $radiusLat; //得到最小緯度
$maxLat = $lat + $radiusLat; //得到最大緯度
//計算經(jīng)度
$mpdLng = $degree * cos($lat * (PI / 180));
$dpmLng = 1 / $mpdLng;
$radiusLng = $dpmLng * $raidus;
$minLng = $lon - $radiusLng; //得到最小經(jīng)度
$maxLng = $lon + $radiusLng; //得到最大經(jīng)度
//范圍
$range = array(
'minLat' => $minLat,
'maxLat' => $maxLat,
'minLon' => $minLng,
'maxLon' => $maxLng
);
return $range;
}
//獲取2點之間的距離
function GetDistance($lat1, $lng1, $lat2, $lng2){
$radLat1 = $lat1 * (PI / 180);
$radLat2 = $lat2 * (PI / 180);
$a = $radLat1 - $radLat2;
$b = ($lng1 * (PI / 180)) - ($lng2 * (PI / 180));
$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;
return $s;
}
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)學(xué)運算技巧總結(jié)》、《php正則表達(dá)式用法總結(jié)》、《PHP+ajax技巧與應(yīng)用小結(jié)》、《PHP運算與運算符用法總結(jié)》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《PHP基本語法入門教程》、《php日期與時間用法總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計有所幫助。
相關(guān)文章
PHP mail 通過Windows的SMTP發(fā)送郵件失敗的解決方案
今天調(diào)試WordPress的郵件發(fā)送功能,總是提示:SMTP server response: 501 5.5.4 Invalid Address。用telnet測試SMTP是沒有任何問題的2009-05-05
Thinkphp結(jié)合AJAX長輪詢實現(xiàn)PC與APP推送詳解
這篇文章主要給大家介紹了關(guān)于Thinkphp結(jié)合AJAX長輪詢實現(xiàn)PC與APP推送的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-07-07
PHP ADODB生成HTML表格函數(shù)rs2html功能【附錯誤處理函數(shù)用法】
這篇文章主要介紹了PHP ADODB生成HTML表格函數(shù)rs2html功能,結(jié)合實例形式分析了php使用ADODB類使用函數(shù)rs2html輸出結(jié)果集生成HTML表格相關(guān)操作技巧,并附錯誤處理函數(shù)errorMsg用法,需要的朋友可以參考下2018-05-05

