آفلاین
user-avatar

location distance

3 سال پیش
توسط احمد جنگی آپدیت شد
آفلاین
user-avatar
alikia ( 5383 تجربه )
3 سال پیش
تخصص : برنامه نویس

سلام . رو یک api دارم کار میکنم و سوالم این هستش که کاربر location خودش رو میفرسته و من باید با توجه به موقعیت کاربر یکسری مکان خاص رو که در شعاع ۵ کیلومتریش هست ریسپانس کنم به چه شکلی باید این رو محاسبه کنم ؟؟؟
(مکان هایی ثبت شده در دیتابیس دو مقدار lat , lng رو دارن)

البته از یک کد استفاده کردم ولی قابلیت paginate() رو بهم نمیده!!! چون سمت اندروید حتما باید این رو داشته باشم . ممنون میشم راهنمایی کنین

$result = DB::table('tbl_resturan')
->select(DB::raw(
",
( 6371
acos( cos( radians(" . $request->lat . ") )
cos( radians(tbl_resturan.locationLO) )

cos( radians(tbl_resturan.locationLA) - radians(" . $request->lng . ") ) +
sin( radians(" . $request->lat . ") ) *
sin( radians(tbl_resturan.locationLO) ) ) )
AS distance"
))
->having("distance", "<", $radius)
->orderby('distance','ASC')->get();

آفلاین
user-avatar
احمد جنگی ( 1404 تجربه )
3 سال پیش
تخصص : برنامه نویس PHP

دوست عزیز به جای get() از paginate() استفاده کنین

برای ارسال پاسخ باید وارد سایت شوید