راکت
matin
matin
توسط matin مطرح شد
3 پاسخ

پیدا کردن موقعیت جغرافیایی کاربران بر اساس یک موقعیت جغرافیایی ثابت یا متحرک در یک شعاع تعریف شده

چجوری میتونم بر اساس موقعیت جغرافیایی یه نود(کاربر)،تو یه شعاع ثابتی هر چی نود هستش رو برگردونم؟
مثلا فاصله 1k باشه و تو این فاصله هر چی نود هست رو بهم بده!


ثبت پرسش جدید
کمال
کمال
تخصص :برنامه نویس ارشد وب
@kamalj8 سال پیشمطرح شد
1

شما میتونید با این تابع فاصله همه کاربران تا این کاربر را بدست بیاورید و بعد بگید اگر فاصله کمتر از 1000 متر بود بمن نشون بده

 private function getDistanceBetweenPointsNew($latitude1, $longitude1, $latitude2, $longitude2, $id)
    {

        $theta = $longitude1 - $longitude2;

        $miles = (sin(deg2rad($latitude1)) * sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) * cos(deg2rad($theta)));

        $miles = acos($miles);

        $miles = rad2deg($miles);

        $miles = $miles * 60 * 1.1515;

        $feet = $miles * 5280;

        $yards = $feet / 3;

        $kilometers = $miles * 1.609344;

        $meters = $kilometers * 1000;
        $id = $id;

        // return compact('miles', 'feet', 'yards', 'kilometers', 'meters');
        return compact('meters', 'id');

    }

matin
matin
@matin.kh738 سال پیشمطرح شد
0

با این تابع یعنی دیگه نیازی به کوئری زدن ندارن دیگه، درسته؟
بعد اینکه برای چک کردن اون شرط باید meters رو چک کنیم دیگه؟


کمال
کمال
تخصص :برنامه نویس ارشد وب
@kamalj8 سال پیشمطرح شد
0

بله دیگه درسته همه چیزش


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام