根据地图坐标查询范围内的商家信息,查询有1公里左右的误差。


/**
     * 查询当前定位位置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'][
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值