/**
* 查询当前定位位置5公里范围內的商家信息
*/
public function findShop()
{
$point = $this -> returnSquarePoint($param['lng'], $param['lat'], 4);//计算经纬度的周围某段距离的正方形的四个点
#查询条件组合
$where = $this->queryParam($point);
$query_params = [];
$query_params['_complex'] = $where;
$query_params['closed'] = 0;//开启的店铺
$shop_list = D('Shop')
-> field('shop_id,shop_name,addr,photo,lat,lng,tel,user_id,sign')
-> where($query_params)
-> select();
#高德地图
$map = new Map();
$amap_config = C('sdk.amap');
if(!$shop_list && $param['keyword']){
Log::write("未找到信息,进入地区搜素");
#获取当前定位的城市
$address = $map->findAddressByPoint($param['lng'].','.$param['lat'], $amap_config['key']);
$address = json_decode($address,true);
$city = '';
if($address['status'] == 1){
$city = $address['regeocode']['addressComponent'][
根据地图坐标查询范围内的商家信息,查询有1公里左右的误差。
最新推荐文章于 2025-03-04 19:16:03 发布
本文探讨了使用地图坐标进行商家信息查询时出现的1公里左右误差问题,分析了误差来源并提出可能的解决方案。

最低0.47元/天 解锁文章
4076

被折叠的 条评论
为什么被折叠?



