提供经度和纬度后,显示距离用户位置最近的药房

问题描述

我想使用laraval制作一个API,该API将具有纬度和经度请求,并且响应将提供用户最近的药房位置的json
我该怎么办或简单的示例或教程类似?

解决方法

如果数据库中已有经度和纬度,则最好自己查询。这来自我正在做类似事情的旧项目(因此可能行不通或不是最佳方法)。

$cities = City::select(DB::raw('*,( 6367 * acos( cos( radians('.$latitude.') ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians('.$longitude.') ) + sin( radians('.$latitude.') ) * sin( radians( latitude ) ) ) ) AS distance'))
->having('distance','<',25)
->orderBy('distance')
->get();