<?php $EARTH_RADIUS = 6378.137; $PI = 3.1415926535898; $fromLatitude = 23.137466; $fromLongitude = 113.352425; $toLatitude = 23.139466; $toLongitude = 113.322425; $fromLatitude = $fromLatitude * $PI / 180; $toLatitude = $toLatitude * $PI / 180; $diffLatitude = $fromLatitude - $toLatitude; $fromLongitude = $fromLongitude * $PI / 180; $toLongitude = $toLongitude * $PI / 180; $diffLongitude = $fromLongitude - $toLongitude; $distance = 2 * asin(sqrt(pow(sin($diffLatitude/2),2 + cos($fromLatitude)*cos($toLatitude)*pow(sin($diffLongitude/2),2))); $distance = $distance *$EARTH_RADIUS; $distance = round($distance * 10000) / 10000; return $distance; //根據用戶的經緯度獲取附近500米的商戶 $myLatitude = 23.137466;//接收到的當前位置的緯度 $myLongitude = 113.352425;//接收到的當前位置的經度 $EARTH_RADIUS = 6378.137; $PI = 3.1415926535898; $diffDistance = 0.5;//500米 $range = 180 / $PI * $diffDistance / $EARTH_RADIUS; //裏面的 1 就代表搜索 1km 之內,單位km $lngR = $range / cos($myLatitude * $PI / 180); $maxLatitude = $myLatitude + $range;//最大緯度 $minLatitude = $myLatitude - $range;//最小緯度 $maxLongitude = $myLongitude + $lngR;//最大經度 $minLongitude = $myLongitude - $lngR;//最小經度
根據兩地經緯度算距離
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.