经纬度php根据一个给定经纬度的点,进行附近地点查询

地点查询  时间:2021-03-01  阅读:()

PHP根据一个给定经纬度的点进行附近地点查询

实现原理先算出该点周围的矩形的四个点然后使用经纬度去直接匹配数据库中的记录。//获取周围坐标public function returnSquarePoint($lng, $lat,$distanc e=0.5){

$earthRadius=6378138;

$dlng=2*asin(sin($distanc e/(2* $earthRadius)) /c os(deg2rad($lat)));

$dlng=rad2deg($dlng);

$dlat=$distanc e/$earthRadius;

$dlat=rad2deg($dlat);return array(

‘left-top’=array(‘lat’=$lat+$dlat, ’lng’=$lng-$dlng),

‘right-top’=array(‘lat’=$lat+$dlat, ‘lng’=$lng+$dlng),

‘left-bottom’=array(‘lat’=$lat - $dlat, ‘lng’=$lng-$dlng),

‘right-bottom’=array(‘lat’=$lat - $dlat, ‘lng’=$lng+$dlng)

//计算两个坐标的直线距离public function getDistanc e($lat 1, $lng 1, $lat2, $lng2){

$earthRadius=6378138; //近似地球半径米

//转换为弧度

$lat1=($lat1 *pi()) / 180;

$lng1=($lng1 *pi())/ 180;

$lat2=($lat2*pi())/ 180;

$lng2=($lng2*pi())/ 180;

//使用半正矢公式用尺规来计算

$c alc Longitude=$lng2- $lng 1;

$c alc Latitude=$lat2- $lat 1;

$stepOne=pow(s in($c alc Latitude/2),2)+c os($lat 1) * c os($lat2) *pow(s in($c alc Longitude/

2),2);

$stepTwo=2*asin(min(1, sqrt($stepOne)));

$c alculatedDistanc e=$earthRadius * $stepTw o;return round($c alc ulatedDis tanc e);

}

优林云(53元)哈尔滨电信2核2G

优林怎么样?优林好不好?优林 是一家国人VPS主机商,成立于2016年,主营国内外服务器产品。云服务器基于hyper-v和kvm虚拟架构,国内速度还不错。今天优林给我们带来促销的是国内东北地区哈尔滨云服务器!全部是独享带宽!首月5折 续费5折续费!地区CPU内存硬盘带宽价格购买哈尔滨电信2核2G50G1M53元直达链接哈尔滨电信4核4G50G1M83元直达链接哈尔滨电信8核8G50G1M131元直...

菠萝云:带宽广州移动大带宽云广州云:广州移动8折优惠,月付39元

菠萝云国人商家,今天分享一下菠萝云的广州移动机房的套餐,广州移动机房分为NAT套餐和VDS套餐,NAT就是只给端口,共享IP,VDS有自己的独立IP,可做站,商家给的带宽起步为200M,最高给到800M,目前有一个8折的优惠,另外VDS有一个下单立减100元的活动,有需要的朋友可以看看。菠萝云优惠套餐:广州移动NAT套餐,开放100个TCP+UDP固定端口,共享IP,8折优惠码:gzydnat-8...

Krypt($120/年),2vCPU/2GB/60GB SSD/3TB

Krypt这两天发布了ION平台9月份优惠信息,提供一款特选套餐年付120美元(原价$162/年),开设在洛杉矶或者圣何塞机房,支持Windows或者Linux操作系统。ion.kryptcloud.com是Krypt机房上线的云主机平台,主要提供基于KVM架构云主机产品,相对于KT主站云服务器要便宜很多,产品可选洛杉矶、圣何塞或者新加坡等地机房。洛杉矶机房CPU:2 cores内存:2GB硬盘:...

地点查询为你推荐
郭吉军什么叫做广告联盟网络明星哪个知道这个网络明星叫什么?免费开通黄钻怎样能免费开通黄钻会员百度抢票浏览器猎豹浏览器,360抢票,百度卫士抢票哪个抢票工具好?吴晓波频道买粉看吴晓波频道的心得吴晓波频道买粉罗辑思维,晓松奇谈,鸿观,吴晓波频道,财经郎眼哪个更有深度bluestacks安卓模拟器BlueStacks如何安装使用?bluestacksbluestacks怎么用bluestacksBlueStacks安卓模拟器官方版怎么用?依赖注入请问下依赖注入的三种方式的区别
上海vps 怎样申请域名 国外bt ev证书 免费ddos防火墙 商家促销 绍兴高防 蜗牛魔方 秒杀预告 drupal安装 重庆电信服务器托管 服务器维护 新网dns 建站技术 hosting ping值 海尔t68g neobux ddos攻击工具 阿里云主机 更多