您的位置:首页 > 文旅 > 旅游 > 核酸检测收费_三明网站建设公司_推广竞价托管费用_什么是网站seo

核酸检测收费_三明网站建设公司_推广竞价托管费用_什么是网站seo

2024/12/8 8:44:25 来源:https://blog.csdn.net/shitian0811/article/details/143715180  浏览:    关键词:核酸检测收费_三明网站建设公司_推广竞价托管费用_什么是网站seo
核酸检测收费_三明网站建设公司_推广竞价托管费用_什么是网站seo

在这里插入图片描述

1.首先本次开发是基于微擎2.0框架开发的。

2.需要认证服务号,因为是获取微信的定位

{php echo register_jssdk();}

3.将上面的代码插入到前端的html中,尽量在js前。

4.然后通过getLocation接口获取用户的定位。

<script>wx.getLocation({type: 'wgs84',success: function (res) {var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。var speed = res.speed; // 速度,以米/每秒计var accuracy = res.accuracy; // 位置精度},});
</script>

4.获取到定位后传到后端,然后通过一个计算方法,计算获取到的定位和打卡的定位。

	/*** 计算当前商家位置是否在范围内* @param 当前位置经度 $lat_a* @param 计算经度 $lng_a* @param 当前位置维度 $lat_b* @param 计算纬度 $lng_b* @author bieanju* @return number 距离  */public function  getDistance_map($lat_a, $lng_a, $lat_b, $lng_b) {//R是地球半径(米)$R = 6366000;$pk = doubleval(180 / 3.1416);$a1 = doubleval($lat_a / $pk);$a2 = doubleval($lng_a / $pk);$b1 = doubleval($lat_b / $pk);$b2 = doubleval($lng_b / $pk);$t1 = doubleval(cos($a1) * cos($a2) * cos($b1) * cos($b2));$t2 = doubleval(cos($a1) * sin($a2) * cos($b1) * sin($b2));$t3 = doubleval(sin($a1) * sin($b1));$tt = doubleval(acos($t1 + $t2 + $t3));return round($R * $tt);}
  1. 然后再进行个判断,判断是否小于规定的值,也就是范围。
if($dingwei > $meta_dingwei){message('您不在活动范围内,请前往活动点进行打卡!', $this->createMobileUrl('item',array('id'=>$id)), 'error');
}

6.以上就是获取定位,然后计算距离的方法,计算那块是搜别人的,然后做个记录,留着以后用得到。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com