How to find nearest location using latitude and longitude in laravel
In this post, i would like to fine neareby place using latitude and longitude query in laravel eloquent. you can simply get nearest geolocation by mysql radius query in laravel 5, laravel 6, laravel 7 and laravel 8.
If you have places, hotels, home, city, state, country, products, dealer, supplier etc with latitude and longitude location then you can simply find easily nearby you. so let's see following sq query that can simply use in laravel model query.
Here is you can see sql query:
6371 * acos(cos(radians(" . $lat . "))
* cos(radians(posts.lat))
* cos(radians(posts.lon) - radians(" . $lon . "))
+ sin(radians(" .$lat. "))
* sin(radians(posts.lat))) AS distance
Example:
$lat = YOUR_CURRENT_LATTITUDE;
$lon = YOUR_CURRENT_LONGITUDE;
DB::table("posts")
->select("posts.id"
,DB::raw("6371 * acos(cos(radians(" . $lat . "))
* cos(radians(posts.lat))
* cos(radians(posts.lon) - radians(" . $lon . "))
+ sin(radians(" .$lat. "))
* sin(radians(posts.lat))) AS distance"))
->groupBy("posts.id")
->get();
I will help you...
- How to Notifications With database Driver in Laravel 11?
- How to Send Email Via Notification in Laravel 11?
- How to Install and Configure Laravel 11 Debugbar?
- How to Like Dislike System in Laravel 11?
- How to Paginate a Model with Relationship in Laravel 11?
- Laravel 11 Upload Files to Amazon S3 Example
- Laravel 11 Send WhatsApp Messages Example
- Laravel 11 Rest API Authentication Using JWT Tutorial