婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 搜索附近的人PHP實現代碼

搜索附近的人PHP實現代碼

熱門標簽:長沙crm外呼系統業務 江蘇外呼電銷機器人報價 400電話申請方法收費 深圳外呼系統收費 南寧高頻外呼回撥系統哪家好 離石地圖標注 專業電話機器人批發商 電話機器人危險嗎 400電話辦理福州市

本文實例為大家分享了PHP實現搜索附近的人具體代碼,供大家參考,具體內容如下

實現思路:

首先,我們應該這樣想: 既然我們知道了用戶當前位置的經緯度,又知道我們將要搜索的范圍,我們可不可以計算出一個范圍 ?也就是說,根據一個中心點和半徑,計算出符合條件的經緯度的最大值和最小值 。

具體實現:

那么到此,想要獨立思考完成的小伙伴可以不要繼續往下看了。
上面我們提到該功能的一個實現原理,接下來我們就講解一下具體的實現步驟。
我們先聲明一個函數,用作計算經緯度的范圍:

/**
 * 根據經緯度和半徑計算出范圍
 * @param string $lat 緯度
 * @param String $lng 經度
 * @param float $radius 半徑
 * @return Array 范圍數組
 */
private function calcScope($lat, $lng, $radius) {
  $degree = (24901*1609)/360.0;
  $dpmLat = 1/$degree;

  $radiusLat = $dpmLat*$radius;
  $minLat = $lat - $radiusLat;    // 最小緯度
  $maxLat = $lat + $radiusLat;    // 最大緯度

  $mpdLng = $degree*cos($lat * (PI/180));
  $dpmLng = 1 / $mpdLng;
  $radiusLng = $dpmLng*$radius;
  $minLng = $lng - $radiusLng;   // 最小經度
  $maxLng = $lng + $radiusLng;   // 最大經度

  /** 返回范圍數組 */
  $scope = array(
    'minLat'  => $minLat,
    'maxLat'  => $maxLat,
    'minLng'  => $minLng,
    'maxLng'  => $maxLng
    );
  return $scope;
}

返回的數組中包含了在 $radius 范圍內,符合條件的最大最小經緯度。
既然我們已經獲取到了范圍,那么我們就可以開始從數據庫中查找所有在這個經緯度范圍內符合條件的記錄:

/**
 * 根據經緯度和半徑查詢在此范圍內的所有的電站
 * @param String $lat  緯度
 * @param String $lng  經度
 * @param float $radius 半徑
 * @return Array     計算出來的結果
 */
public function searchByLatAndLng($lat, $lng, $radius) {
  $scope = $this->calcScope($lat, $lng, $radius);   // 調用范圍計算函數,獲取最大最小經緯度
  /** 查詢經緯度在 $radius 范圍內的電站的詳細地址 */
  $sql = 'SELECT `字段` FROM `表名` WHERE `Latitude`  '.$scope['maxLat'].' and `Latitude` > '.$scope['minLat'].' and `Longitude`  '.$scope['maxLng'].' and `Longitude` > '.$scope['minLng'];

  $stmt = self::$db->query($sql);
  $res = $stmt->fetchAll(PDO::FETCH_ASSOC);    // 獲取查詢結果并返回
  return $res;
}

擴展:

直到現在,我們已經知道了如何計算出附近的人,但在實際需求中,我們往往需要計算出每一個人與當前中心點的實際距離。
接著,我們再來看一個方法:

/**
 * 獲取兩個經緯度之間的距離
 * @param string $lat1 緯一
 * @param String $lng1 經一
 * @param String $lat2 緯二
 * @param String $lng2 經二
 * @return float 返回兩點之間的距離
 */
public function calcDistance($lat1, $lng1, $lat2, $lng2) {
  /** 轉換數據類型為 double */
  $lat1 = doubleval($lat1);
  $lng1 = doubleval($lng1);
  $lat2 = doubleval($lat2);
  $lng2 = doubleval($lng2);
  /** 以下算法是 Google 出來的,與大多數經緯度計算工具結果一致 */
  $theta = $lng1 - $lng2;
  $dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) + cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta));
  $dist = acos($dist);
  $dist = rad2deg($dist);
  $miles = $dist * 60 * 1.1515;
  return ($miles * 1.609344);
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • php+ajax做仿百度搜索下拉自動提示框(有實例)
  • php啟用sphinx全文搜索的實現方法
  • php站內搜索并高亮顯示關鍵字的實現代碼
  • PHP 搜索查詢功能實現
  • php 搜索框提示(自動完成)實例代碼
  • jquery+php實現搜索框自動提示
  • ThinkPHP讓分頁保持搜索狀態的方法
  • php使用正則表達式進行字符串搜索的方法
  • 利用PHP+JS實現搜索自動提示(實例)

標簽:株洲 濱州 白酒營銷 興安盟 南昌 曲靖 南京 太原

巨人網絡通訊聲明:本文標題《搜索附近的人PHP實現代碼》,本文關鍵詞  搜索,附,近的,人,PHP,實現,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《搜索附近的人PHP實現代碼》相關的同類信息!
  • 本頁收集關于搜索附近的人PHP實現代碼的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美酷刑日本凌虐凌虐| 538prom精品视频线放| av电影天堂一区二区在线观看| 国产精品久久夜| 国产大陆a不卡| 中文字幕一区二区在线观看| 99在线精品观看| 亚洲国产成人91porn| 91在线视频免费91| 日欧美一区二区| 欧美一级片免费看| 国产精品亚洲一区二区三区妖精| 久久亚洲影视婷婷| 91麻豆精品视频| 免费一级片91| 亚洲日本免费电影| 欧美成人a在线| 91视视频在线观看入口直接观看www| 欧美精彩视频一区二区三区| 欧美主播一区二区三区美女| 成人高清在线视频| 国产精品亲子乱子伦xxxx裸| 欧美色图第一页| 99久久精品免费看| 欧美日韩综合在线免费观看| 韩日精品视频一区| 欧美日韩在线精品一区二区三区激情| 欧美精品一区二区三区四区 | 亚洲线精品一区二区三区 | 激情综合网av| 久久精品男人的天堂| 美腿丝袜亚洲一区| 日韩美女天天操| 久久精品国产一区二区三| 丝袜亚洲另类丝袜在线| 国模一区二区三区白浆| 2021久久国产精品不只是精品| 久久精品噜噜噜成人88aⅴ| 欧美一区二区三区在线观看| 亚洲成人自拍一区| 日韩欧美另类在线| 国产精品夜夜嗨| 中文字幕一区二区三区色视频| av成人动漫在线观看| 一区二区三区**美女毛片| 精品视频999| 美女视频一区二区三区| 国产日韩欧美一区二区三区乱码 | 麻豆精品久久精品色综合| 精品对白一区国产伦| 波多野结衣中文字幕一区| 一区二区三区欧美久久| 日韩一区二区在线看片| 国产美女一区二区三区| 亚洲美女在线国产| 日韩欧美国产三级| 99re在线视频这里只有精品| 日韩电影免费一区| 亚洲国产精品精华液2区45| 在线区一区二视频| 美女mm1313爽爽久久久蜜臀| 国产精品久久久久久久岛一牛影视| 色av综合在线| 国产九色sp调教91| 亚洲成人激情综合网| 久久久久久久久久电影| 色婷婷精品大视频在线蜜桃视频| 日韩和欧美一区二区三区| 欧美国产日韩在线观看| 制服丝袜亚洲精品中文字幕| 99久久精品国产观看| 精品一区二区三区免费毛片爱| 亚洲天堂免费看| 精品三级在线看| 欧美在线观看一区| 国产不卡在线播放| 午夜激情久久久| 亚洲人成伊人成综合网小说| 欧美精品一区二区不卡| 欧美日韩精品三区| 成人免费电影视频| 美女视频黄 久久| 亚洲国产一区二区在线播放| 国产亚洲精品bt天堂精选| 7777精品伊人久久久大香线蕉的| 91视频你懂的| 岛国av在线一区| 精品无人码麻豆乱码1区2区| 亚洲成av人影院| 亚洲欧美日本在线| 亚洲色欲色欲www在线观看| 久久久精品tv| 久久男人中文字幕资源站| 日韩一区二区在线观看| 8v天堂国产在线一区二区| 欧美三级电影网| 91国产免费看| 色视频成人在线观看免| 色综合天天综合在线视频| 成人免费视频网站在线观看| 狠狠色丁香久久婷婷综| 精东粉嫩av免费一区二区三区| 日日夜夜精品免费视频| 亚洲成人激情自拍| 午夜精品一区二区三区免费视频| 一区二区三区国产豹纹内裤在线| 亚洲免费色视频| 一区二区三区 在线观看视频| 亚洲丝袜另类动漫二区| ●精品国产综合乱码久久久久| 国产精品久久久久一区二区三区共| 日本一区二区三区四区| 国产精品毛片久久久久久久| 中文字幕成人av| 中文字幕中文乱码欧美一区二区 | 欧美三级中文字幕| 欧美午夜片在线看| 欧美精品自拍偷拍| 日韩精品最新网址| 日本一区二区高清| 1000精品久久久久久久久| 一区二区三区美女| 日产精品久久久久久久性色| 极品销魂美女一区二区三区| 国产精品123| 色又黄又爽网站www久久| 欧美日韩高清在线| 日韩精品一区二区三区三区免费| 久久久亚洲综合| 亚洲色图视频免费播放| 亚洲国产综合在线| 精油按摩中文字幕久久| 福利一区福利二区| 欧日韩精品视频| 精品国产三级a在线观看| 国产欧美日韩在线观看| 一区二区三区四区在线| 青青草国产成人av片免费| 国产福利91精品一区二区三区| 一本高清dvd不卡在线观看| 欧美日韩成人在线| 国产欧美一区二区精品性| 亚洲综合视频在线观看| 精久久久久久久久久久| 91精品福利在线| 精品91自产拍在线观看一区| 一区二区三区精品视频| 精品系列免费在线观看| 在线观看亚洲专区| 国产日产欧美一区二区三区 | 日韩一级片网址| 国产精品久久久久久久久免费丝袜 | 国产亚洲一本大道中文在线| 一区二区三区产品免费精品久久75| 美女视频黄频大全不卡视频在线播放| 国产91精品一区二区麻豆网站| 欧美另类久久久品| 中文字幕一区二区在线观看| 九九**精品视频免费播放| 欧美日韩精品一区视频| 国产精品久久久久久户外露出| 久久精品99久久久| 欧美精选一区二区| 蜜臀精品久久久久久蜜臀| 99精品热视频| 国产欧美日韩视频在线观看| 麻豆视频观看网址久久| 91福利精品视频| 17c精品麻豆一区二区免费| 精品一区二区免费在线观看| 欧美精品一级二级三级| 18成人在线视频| av激情成人网| 国产欧美日韩综合精品一区二区| 久久99国内精品| 日韩精品最新网址| 蜜臀av亚洲一区中文字幕| 欧美区一区二区三区| 亚洲第一搞黄网站| 欧美性猛片aaaaaaa做受| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 亚洲成人777| 色狠狠一区二区| 亚洲欧美激情在线| 色综合久久久久网| 亚洲免费视频成人| 91麻豆国产在线观看| 亚洲天堂精品视频| 日本国产一区二区| 亚洲永久免费av| 欧美人狂配大交3d怪物一区| 图片区日韩欧美亚洲| 欧美日高清视频| 免费人成精品欧美精品| 欧美成人综合网站| 国产精品77777竹菊影视小说| 国产亚洲精品7777| 99久久久国产精品免费蜜臀| 亚洲欧美日韩国产中文在线| 欧美日韩精品一区二区三区|