meisam moradian
2 سال پیش توسط meisam moradian مطرح شد
2 پاسخ

آرایه در لاراول

سلام
یک مورد ساده اما رفته تو مخم حل نمیشه.
من یک جدول دارم بنام date که یک ستون داره بنام time که داده های مشخصی توش هست (مثل 9 و 10 و ...)
یک جدول دیگه دارم که برای سفارشات هست، تو این جدول یک ستون داره برای زمان ارسال که اسم اون هم time هست و از داده های time جدول بالایی پر میشه.
حالا من میخوام برای گرفتن سفارشات جدید، به کاربر تایم هایی که سفارشی ثبت نشده را نشان بدم و بقیه نمایش داده نشه.
مثلا در یک تاریخ خاصی ساعت های 9 و 11 و 13 سفارش ثبت شده ولی برای ساعت های 8 و 10 و 14 و 15 و 16 و 17 سفارشی ثبت نشده، حالا من میخوام برای سفارش جدید به مشتری (کاربر) فقط زمان هایی که سفارش تو اون زمان ها ثبت نشده را نمایش بدم ( همون 6 تا ساعت دومی).
خودم اومدم سفارشات برای تاریخ خاص را فیلتر کردم و با pluck تایم هاش رو درآوردم. بعد اومدم کار زیر رو کردم

        $dates = array($orders->pluck('time'));
            $times = Date::whereNotBetween('time',$dates)->get();

اما جواب نداد، اما به جای $dates در خط دوم مثلا [10 , 11 , 12] رو میزارم جواب میده
لطفا راهنمایی بفرمایید. لطفا نمونه کد یا آموزش


ثبت پرسش جدید
سبحان دادخواه
تخصص : دانشجوی برنامه نویسی :)
@SobhanDadkhah 2 سال پیش مطرح شد
0

سلام.

در اصل یک چیزی متضاد با کار whereIn میخوام

whereNotIn تست نکردید؟

$users = DB::table('users')
                    ->whereNotIn('id', [1, 2, 3])
                    ->get();

مستندات


meisam moradian
تخصص : برنامه نویس و توسعه دهنده
@meisammoradian8 2 سال پیش مطرح شد
0

در اصل یک چیزی متضاد با کار whereIn میخوام


سبحان دادخواه
تخصص : دانشجوی برنامه نویسی :)
@SobhanDadkhah 2 سال پیش مطرح شد
0

سلام.

در اصل یک چیزی متضاد با کار whereIn میخوام

whereNotIn تست نکردید؟

$users = DB::table('users')
                    ->whereNotIn('id', [1, 2, 3])
                    ->get();

مستندات


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

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