美文网首页
php根据经纬度查询最近商家

php根据经纬度查询最近商家

作者: 昱弟丶 | 来源:发表于2018-11-29 18:29 被阅读0次
//$lon1 用户当前经度  $lat1用户当前纬度  $lon2数据库经度的字段名  $lat2数据库纬度的字段名
public function distance_sql($lon1='116.434164',$lat1='39.909843',$lon2='lon',$lat2='lng')
    {
        $sql = "round(6378.138*2*asin(sqrt(pow(sin( ({$lat1}*pi()/180-{$lat2}*pi()/180)/2),2)+cos({$lat1}*pi()/180)*cos({$lat2}*pi()/180)* pow(sin( ({$lon1}*pi()/180-{$lon2}*pi()/180)/2),2)))*1000) ";
        return $sql;
    }
    public function address()
    {
        $sql = $this->distance_sql();
        $row = Db::query("select * ,".$sql."as distance  from ws_shop order by distance");
        return json($row);
    }

相关文章

网友评论

      本文标题:php根据经纬度查询最近商家

      本文链接:https://www.haomeiwen.com/subject/piafcqtx.html