У меня есть две таблицы:
------ ---------
places drivers
------ ---------
longitude longitude
latitude latitude
Что я хочу сделать?
Я хочу рассчитать расстояние между местом и водителями, чтобы найти как минимум 10 водителей, которые находятся близко к разместить и отправить им уведомления.
Моя проблема?
Моя проблема в том, что я не знаю, как рассчитать расстояние от места долготы и широты и найти 10 водителей долготы и широты, которые поблизости.
Мой код:
$order = Order::find($id);
$drivers = Driver::where('id','!=',$driver->id)->get();
$place = Place::find('id',$order->place_id);
$place_longitude = $place->longitude;
$place_latitude = $place->latitude;
foreach ($drivers as $driver) {
if ($driver->availability === 1 )
{
$driver_longitude = $driver->longitude;
$driver_latitude = $driver->latitude;
$uuid = $driver->uniqid;
NotificationHelper::orderNotificationForDriver($order->id,$uuid);
}
}