Find nearby locations using the Haversine formula in Eloquent query
Uses the haversine formula to find all DB records with a location within a specified radius
Haversine
Managing coordinates
Eloquent or DB Query Builder
// the centre of your search
$latitude = '56.32124';
$longitude = '-1.342934';
// search radius
$distance = 5; //(miles - see note)
$query->selectRaw('(3959 * acos (
cos ( radians(?) )
* cos( radians( latitude ) )
* cos( radians( longitude ) - radians(?) )
+ sin ( radians(?) )
* sin( radians( latitude )))) AS distance',[
$latitude,
$longitude,
$latitude
]);
$query->havingRaw('distance <= ? OR 0', [$distance]);PreviousAdding column to Database Notifications tableNextUsing Queues on Shared Hosting with Laravel
Last updated