關於php依據使用者當前定位判斷距離最近的商家或者別的
先來一個算經緯度的網站,可以對比結果
https://www.hhlink.com/經緯度/
後臺PHP:
//$lon1 使用者當前經度 $lat1使用者當前緯度 $lon2資料庫經度的欄位名 $lat2資料庫緯度的欄位名
public function distance_sql($lon1='',$lat1='',$lon2='lon',$lat2='lng')
{
$PI = 3.1415926;
//這裡 /1000 可去可不去,看需要
$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) /1000";
return $sql;
}
public function gwz()
{
$lon1=$this->request->post('lon');
$lat1=$this->request->post('lng');
$table=$this->request->post('table');//需要查詢的表
$sql = $this->distance_sql($lon1,$lat1);
$row = Db::query("select * ,".$sql."as distance from cd_".$table." HAVING distance <= '100000'");
return json($row);
}
根據對比經緯度網站結果,相差無幾,大致位置就行
網上例子太多了,都可以看到
相關文章
- 基於iPhone 上的運動協處理器M7判斷使用者當前的運動(姿態)型別iPhone型別
- JavaScript判斷當前裝置和瀏覽器型別JavaScript瀏覽器型別
- 判斷當前訪問的使用者是 PC端 還是 手機端
- 帝國CMS利用PHP判斷當前頁面是否為首頁PHP
- 二叉樹:距離最近的共同祖先二叉樹
- 記一次關於js陣列型別判斷及js型別判斷的細節探索JS陣列型別
- js 怎樣判斷使用者是否在瀏覽當前頁面JS
- update 修改資料時,依賴或者說需要根據另一個值來進行判斷l
- 原生JS獲取DOM 節點到瀏覽器頂部的距離或者左側的距離JS瀏覽器
- JS判斷當前裝置是 PC IOS AndriodJSiOS
- 判斷Android 當前版本是否為debug版本Android
- L2-012 關於堆的判斷
- Python 判斷當前作業系統型別的模組Python作業系統型別
- 聊一下關於判斷資料型別資料型別
- 使用帶型別判斷的比較判斷型別
- java 經緯度處理、計算兩地的距離、獲取當前一定距離以內的經緯度值Java
- Flutter 如何判斷 Widget 位於前臺Flutter
- Android判斷當前裝置是否設定了代理Android
- 用程式碼判斷當前系統是否支援某個版本的feature
- vue重新整理當前頁面或者當前元件Vue元件
- js根據字尾判斷檔案檔案型別的程式碼JS型別
- 判斷使用者是用什麼瀏覽器或者手機瀏覽器
- 如何通過Java程式碼判斷當前的環境是否支援JRE 9Java
- js依據ip獲取使用者當前所在城市JS
- 最安全的型別判斷型別
- js中的型別判斷JS型別
- 前幾天為了精準判斷物件型別,封裝一個高大上的資料型別的判斷,裝個逼物件封裝資料型別
- php判斷終端型別(手機與pc)PHP型別
- JS在瀏覽器中判斷當前網路狀態JS瀏覽器
- 判斷當前瀏覽器是不是微信瀏覽器瀏覽器
- JavaScript 中那些關於座標和距離的屬性與方法JavaScript
- 最近積累的幾個關於 PHP 類與 MySQL 的小問題PHPMySql
- java 經緯度處理、計算兩地的距離、獲取當前一定距離以內的經緯度值 2022-02-14 0Java
- JavaScript 元素距離視窗頂部的距離JavaScript
- oracle資料庫事務transaction隔離級別isolation level的選擇依據Oracle資料庫
- 關於 PHP 的資料型別 (一)PHP資料型別
- 關於 PHP 的資料型別 (二)PHP資料型別
- 關於 PHP 的資料型別 (三)PHP資料型別