🚀 التعامل مع التواريخ في Laravel منغير Native Queries
بتتعامل مع Native Query علشان تجيب داتا بناءً على الـ DateTime؟
تعالى أقدملك شوية Functions قوية في Eloquent هتسهل عليك الشغل ده وهتغنيك عن كتير من الـ Raw Queries
📌ال function الاولي معانا وهي whereBetween()
Task::whereBetween('completed_at', [
$request->from ?? '2023-01-01',
$request->to ?? now(),
])->get();
دي بتستخدم لما تحب تجيب الداتا اللي تاريخها بين قيمتين (زي ما بنعمل Range).
مثال عملي: تجيب الـ Tasks اللي خلصت في فترة معينة
📌تاني funtion معانا whereDate()
User::whereDate('created_at', today())->get();
بتقارن فقط بالتاريخ بدون الوقت.
مثال: تجيب كل الـ Users اللي سجلوا النهاردة.
تالت function معانا whereMonth()
User::whereMonth('created_at', '12')->get();
بتقارن بشهر معين فقط (من 1 لـ 12).
مثال: تجيب كل المستخدمين اللي اتسجلوا في ديسمبر.
📌رابع function معانا whereDay()
User::whereDay('created_at', '31')->get();
بتقارن بيوم الشهر فقط.
مثال: المستخدمين اللي اتسجلوا في يوم 31 في أي شهر.
📌خامس function معانا whereYear()
User::whereYear('created_at', date('Y'))->get();
بتقارن بالسنة فقط.
مثال: المستخدمين اللي اتسجلوا خلال السنة الحالية.
📌سادس function معانا والاخيره whereTime()
User::whereTime('created_at', '=', '14:13:58')->get();
بتقارن بالوقت فقط (يعني الساعة والدقيقة والثانية).
مثال: تجيب المستخدمين اللي اتسجلوا بالظبط في 02:13:58 ظهرًا.
وبكدا يبقا اتكلمنا عن 6 Functions معرفتك بيهم هيوفر عليك Native Query🎯
#Laravel #Eloquent #PHP #DateQuery #BackendTips