1. 程式人生 > >根據經緯度座標計算距離sql語句

根據經緯度座標計算距離sql語句

    //根據經緯度計算附近商家距離   
    /* @param $lng,經度
    *  @param $lat,緯度
    *  @param $distance  計算的距離
    *  @param $sort   根據距離排序
    */
 function NearStore($lng,$lat,$distance,$sort){
 $sql = "select *, sqrt( ( ((".$lng."-lng)*PI()*12656*cos(((".$lat."+lat)/2)*PI()/180)/180) * ((".$lng."-lng)*PI()*12656*cos (((".$lat."+lat)/2)*PI()/180)/180) ) + 
  ( ((".$lat."-lat)*PI()*12656/180) * ((".$lat."-   lat)*PI()*12656/180) ) )/2   as   distancefrom  表名   group  by distance  $sort  having   distance  <".$distance;
  $pdo->query($sql);}

1.在商家入駐填寫資料是,獲取商家經緯度,存入資料庫中
2.查詢時獲取使用者的地理位置座標,經緯度,傳入到上面函式中,距離可以自己定義,就可以獲取使用者當前地理位置附近的商家資訊了