如何使用Google矩阵API显示用户经纬度距离特定位置经纬度200米以外的消息

问题描述

我要捕获用户的当前位置lat long,并将其与特定位置lat long(存储在db中的lat lat long)进行比较,并将两者进行比较,如果用户lat long超过200米,则显示消息您不在200米范围内,但是输出我得到了错误的值,它显示了122公里,这是不正确的。

Code:

function check_distance($lat1,$lat2,$long1,$long2) {
        $url = "https://maps.googleapis.com/maps/api/distancematrix/json?key=my_api_key" . $lat1 . "," . $long1 . "&destinations=" . $lat2 . "," . $long2 . "&mode=driving&language=en";
        $ch = curl_init();
        curl_setopt($ch,CURLOPT_URL,$url);
        curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
        curl_setopt($ch,CURLOPT_PROXYPORT,3128);
        curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,0);
        curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,0);
        $response = curl_exec($ch);
        curl_close($ch);
        $response_a = json_decode($response,true);
        $dist_value = $response_a['rows'][0]['elements'][0]['distance']['value'];
        if($distance_value>200 meters){
        // show more than 200 meters from specific location 
        }
    }

echo check_distance($lat1,$long2);

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)