```
https://blog.csdn.net/T_Hong/article/details/126460823
```
```
/**
* 在數據庫中獲取所有店鋪,按距離用戶的遠近排序(默認升序
* 距離單位是米
* @param double $lat 緯度
* @param double $lng 經度
* @param string $order 排序方式(asc/升序,desc/降序
* @return array 返回查詢的數據
*/
public function getDistanceByLatLng($lat, $lng, $order = 'asc')
{
// 數據庫表名
$database_name = 'test_table';
// 數據庫字段名 - 緯度
$field_lat = 'lat';
// 數據庫字段名 - 經度
$field_lng = 'lng';
return Db::table($database_name)
->field("*, (6378.138 * 2 * asin(sqrt(pow(sin(({$field_lat} * pi() / 180 - {$lat} * pi() / 180) / 2),2) + cos({$field_lat} * pi() / 180) * cos({$lat} * pi() / 180) * pow(sin(({$field_lng} * pi() / 180 - {$lng} * pi() / 180) / 2),2))) * 1000) as distance")
// 按距離升序排列(由近到遠
->order("distance {$order}")
->select();
}
```

```
// 用戶1的位置(河南省鄭州市金水區農業路河南省農業科學院
$lat = 34.788179;
$lng = 113.679335;
// 調用文章開頭的方法
$result = $this->getDistanceByLatLng($lat, $lng);
halt($result);
```
- tp5圖片上傳
- 文件上傳到七牛云
- 上傳到阿里云
- 富文本編輯器
- phpexcel和spreadsheet
- phpexcel導出
- phpexcel導入
- spreadsheet
- tp5_api接口
- 跨域請求
- JWT
- 圖片和視頻上傳接口
- 驗證碼
- tp5小程序登錄
- tp5小程序支付
- tp5基礎架構
- 驗證層
- 模型層Model
- 控制器構找
- tp5.0支付寶
- 海報二維碼
- 輪播圖
- echarts柱狀圖
- layui的圖片彈窗
- p標簽顯示指定行數(全部)
- jquery和layerdate調用日期
- ajax發送文件和圖片的坑啊
- JS日期點擊上一天和下一天
- 百度分享js
- POST請求
- 商品數據表
- tp5.0支付寶最全
- tp5路由的坑
- 二維數組排序
- tp5模型分組group錯誤
- 二維變一維數組
- 無限樹形結構
- json對象轉數組
- 模型關聯查詢
- tp5的模型獲取器和字段設定
- 經緯度獲取距離排序