Lakukan pencarian radius yang cepat dan efisien pada model Laravel Eloquent Anda.
Laravel Geoly menyediakan cara yang nyaman bagi model Laravel Eloquent Anda untuk melakukan kueri dalam radius tertentu di sekitar suatu posisi. Ini sangat cepat dengan menggunakan kotak pembatas untuk mengurangi kemungkinan hasil dan menghitung jarak hanya pada subset yang tersisa. Laravel Geoly berfungsi pada MySQL dan PostgreSQL.
Cukup minta proyek melalui komposer:
$ composer require akuechler/laravel-geoly
Geoly mengasumsikan dua kolom latitude
dan longitude
pada model fasih Anda. Cukup tambahkan mereka ke migrasi Anda jika belum ada.
$ table -> double ( ' latitude ' );
$ table -> double ( ' longitude ' );
Jika Anda lebih suka menggunakan nama lain untuk kolom database Anda, tentukan nama tersebut dalam model Anda.
const LATITUDE = ' lat ' ;
const LONGITUDE = ' lng ' ;
Gunakan paket Geoly dalam model Eloquent Anda.
class YourModel extends Model
{
use Geoly ;
...
}
Untuk mencari semua model dalam radius tertentu di sekitar suatu posisi, tambahkan cakupan radius
ke kueri Anda.
$ query = YourModel :: radius ( $ latitude , $ longitude , $ radius );
$ query -> get ();
Proyek ini sangat terinspirasi oleh artikel Laravel Geographical and Movable Type Scripts tentang Memilih titik dalam lingkaran pembatas.