Ahmed Alammar نشر 7 يونيو 2023 أرسل تقرير نشر 7 يونيو 2023 (معدل) سلام عليكم عندي مشروع في laravel وforech تكرر مثل تاريخ 1-4-2023 عنوان مقالة - الرياضة انا ابي امنع forech من تكرار التاريخ يعني يجي التاريخ وتجتمع المقالات تحته وشكرا تم التعديل في 7 يونيو 2023 بواسطة Mustafa Suleiman تعديل عنوان السؤال 1 اقتباس
0 Mustafa Suleiman نشر 7 يونيو 2023 أرسل تقرير نشر 7 يونيو 2023 إذا فهمت سؤالك بشكل صحيح، فأنت ترغب في تجميع المقالات التي تحمل نفس التاريخ تحتاج إلى استخدام حلقة foreach في Laravel صحيح؟ وإذا كان كذلك فتستطيع استخدام دالة groupBy المتاحة في Laravel لتجميع المقالات حسب التاريخ كالتالي: // استعلام لاسترداد جميع المقالات الموجودة في قاعدة البيانات $articles = Article::all(); // تجميع المقالات حسب التاريخ $groupedArticles = $articles->groupBy('date'); // عرض المقالات حسب التاريخ @foreach($groupedArticles as $date => $articles) <h2>{{ $date }}</h2> @foreach($articles as $article) <h3>{{ $article->title }}</h3> <p>{{ $article->content }}</p> @endforeach @endforeach حيث تسترد جميع المقالات من قاعدة البيانات، ثم تجميعها حسب التاريخ باستخدام الدالة groupBy('date')، ثم استخدام حلقتي foreach متداخلتين لعرض المقالات حسب التاريخ. وعليك بالتأكد من ضبط النموذج وقاعدة البيانات بشكل صحيح وفقًا لما تريده. اقتباس
0 عبدالباسط ابراهيم نشر 7 يونيو 2023 أرسل تقرير نشر 7 يونيو 2023 إذا كان لديك مجموعة من المقالات التي تحتوي على تاريخ النشر وعنوان المقالة وتريد تجميعها بناءً على التاريخ، يمكنك استخدام الكود التالي: $articles = Article::orderBy('published_date', 'desc')->get()->groupBy('published_date'); في هذا المثال، يتم استدعاء دالة `groupBy()` على النتيجة المسترجعة من الدالة `get()` لتجميع المقالات بناءً على التاريخ. يتم تحديد الترتيب باستخدام الدالة `orderBy()` لجعل المقالات الأحدث أولاً. وبهذا، ستحصل على مجموعات من المقالات التي تم تجميعها بناءً على التاريخ، ولا يتم تكرار التاريخ في النتائج. يمكنك استخدامها في عرض المقالات على الصفحة بناءً على التاريخ، على سبيل المثال: @foreach($articles as $date => $articlesByDate) <h2>{{ $date }}</h2> <ul> @foreach($articlesByDate as $article) <li>{{ $article->title }}</li> @endforeach </ul> @endforeach في هذا المثال، يتم استخدام دالة `foreach()` للتكرار على المجموعات التي تم تجميعها بناءً على التاريخ. تم عرض التاريخ كعنوان رئيسي وعرض عناوين المقالات تحتها ضمن علامات `ul` و `li`. اقتباس
0 Mohammad Jumaa نشر 15 ديسمبر 2023 أرسل تقرير نشر 15 ديسمبر 2023 وعليكم السلام، يمكنك تنظيم مقالاتك بحيث يظهر كل تاريخ مرة واحدة وتحته جميع المقالات المتعلقة بهذا التاريخ. يتطلب هذا تجميع المقالات حسب التاريخ في مصفوفة ومن ثم عرضها باستخدام حلقة تكرار foreach. إليك مثالًا على كيفية تنفيذ ذلك: تجميع المقالات حسب التاريخ: أولًا، قم بتجميع المقالات في مجموعات حسب تاريخ النشر. يمكنك القيام بذلك في الكود الخاص بمتحكم Laravel. عرض المقالات في الواجهة الأمامية: استخدم حلقة foreach في ملف الواجهة الأمامية (على سبيل المثال، ملف Blade) لعرض التواريخ والمقالات المرتبطة بها. فيما يلي مثال توضيحي لكيفية القيام بذلك: في متحكم Laravel: public function index() { $articles = Article::orderBy('publish_date', 'desc')->get(); $articlesByDate = $articles->groupBy(function($item) { return $item->publish_date->format('Y-m-d'); }); return view('articles.index', compact('articlesByDate')); } في ملف Blade: @foreach ($articlesByDate as $date => $articles) <h2>{{ $date }}</h2> @foreach ($articles as $article) <p>{{ $article->title }} - {{ $article->category }}</p> @endforeach @endforeach في هذا المثال، يتم أولاً تجميع المقالات حسب تاريخ النشر في المتحكم، ثم يتم تكرار عرض التواريخ والمقالات المرتبطة بها في الواجهة الأمامية باستخدام foreach. اقتباس
السؤال
Ahmed Alammar
سلام عليكم
عندي مشروع في laravel
وforech تكرر مثل تاريخ 1-4-2023 عنوان مقالة - الرياضة
انا ابي امنع forech من تكرار التاريخ يعني يجي التاريخ وتجتمع المقالات تحته وشكرا
تم التعديل في بواسطة Mustafa Suleimanتعديل عنوان السؤال
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.