Rumah  >  Soal Jawab  >  teks badan

Laravel melaksanakan gelung acara harian

Sesiapa sahaja tahu cara melaksanakan gelung acara harian. Dalam kes saya, saya mempunyai 10 acara Fikirkan ia sebagai peristiwa 1, peristiwa 2, peristiwa 3 dan ....

Bagaimana saya boleh melakukannya, katakanlah

  1. Acara Isnin 1
  2. Acara Selasa 2
  3. Acara Rabu 3
  4. Acara Khamis 4
  5. Acara Jumaat 5
  6. Acara Sabtu 6
  7. Acara Ahad 7
  8. Acara Isnin 8
  9. Acara Selasa 9
  10. Acara Rabu 10
  11. Aktiviti Khamis 1 (Kitaran)
  12. Acara Jumaat 2 Tunggu

Adakah cara untuk mencapai sesuatu seperti ini?

P粉609866533P粉609866533228 hari yang lalu452

membalas semua(2)saya akan balas

  • P粉573809727

    P粉5738097272024-03-29 14:37:30

    Lakukan operasi berikut.

    $day = date("D");  
       switch($day){
         case 'Monday':
              return 'event 1';
         break;
         
         case 'Tuesday':
              return 'event 2';
         break;
          *********
          *********
         case 'Friday':
              return 'event 5';
         break;
         }

    balas
    0
  • P粉130097898

    P粉1300978982024-03-29 12:13:44

    Dalam Laravel anda boleh menggunakan Carbon

    Boleh rujuk kod berikut

    $now = Carbon::now();
    $weekStartDate = $now->startOfWeek();
    
    $daysInMonth = $weekStartDate->daysInMonth;
    $events = ["event 1","event 2","event 3","event 4","event 5","event 6","event 7","event 8","event 9","event 10"];
    $str = "";
    for($i = 0; $i < $daysInMonth; $i++) {
      $str  .= $now->startOfWeek()->add($i, 'day')->isoFormat('dddd') . "_". $events[$i % count($events)]."\n";
      
    }
    echo $str;

    Hasilnya

    Monday_event 1
    Tuesday_event 2
    Wednesday_event 3
    Thursday_event 4
    Friday_event 5
    Saturday_event 6
    Sunday_event 7
    Monday_event 8
    Tuesday_event 9
    Wednesday_event 10
    Thursday_event 1
    Friday_event 2
    Saturday_event 3
    Sunday_event 4
    Monday_event 5
    Tuesday_event 6
    Wednesday_event 7
    Thursday_event 8
    Friday_event 9
    Saturday_event 10
    Sunday_event 1
    Monday_event 2
    Tuesday_event 3
    Wednesday_event 4
    Thursday_event 5
    Friday_event 6
    Saturday_event 7
    Sunday_event 8
    Monday_event 9
    Tuesday_event 10
    Wednesday_event 1

    balas
    0
  • Batalbalas