Mengekstrak Hari Dalam Minggu daripada Nombor Minggu Diberi
Mengira hari individu yang jatuh dalam minggu tertentu, diberi nombor minggu yang sepadan , adalah tugas biasa dalam aplikasi berasaskan masa. Panduan ini menyediakan penyelesaian untuk perkara ini dalam PHP menggunakan fungsi tarikh, strtotime dan mktime.
Pelaksanaan PHP
<code class="php"><?php $week_number = 40; $year = 2008; for ($day = 1; $day <= 7; $day++) { echo date('m/d/Y', strtotime($year . 'W' . $week_number . $day)) . "\n"; } ?></code>
Coretan kod ini mula-mula memulakan nombor minggu dan tahun yang sepadan. Kemudian, ia berulang melalui hari dalam seminggu, bermula dari Isnin (hari 1) dan berakhir dengan Ahad (hari ke-7). Untuk setiap hari, ia mengira tarikh yang sepadan menggunakan fungsi strtotime dan mencetaknya dalam format m/d/Y.
Fungsi PHP Tambahan
Sebagai alternatif, PHP lain fungsi, week_from_monday, boleh digunakan untuk mendapatkan tarikh untuk minggu tertentu, bermula dari hari Isnin. Fungsi ini mengambil rentetan tarikh dalam format DD-MM-YYYY sebagai hujah dan mengembalikan tatasusunan tarikh untuk minggu yang sepadan.
<code class="php"><?php function week_from_monday($date) { list($day, $month, $year) = explode('-', $date); $wkday = date('l', mktime(0, 0, 0, $month, $day, $year)); switch ($wkday) { case 'Monday': $numDaysToMon = 0; break; case 'Tuesday': $numDaysToMon = 1; break; case 'Wednesday': $numDaysToMon = 2; break; case 'Thursday': $numDaysToMon = 3; break; case 'Friday': $numDaysToMon = 4; break; case 'Saturday': $numDaysToMon = 5; break; case 'Sunday': $numDaysToMon = 6; break; } $monday = mktime(0, 0, 0, $month, $day - $numDaysToMon, $year); $seconds_in_a_day = 86400; for ($i = 0; $i < 7; $i++) { $dates[$i] = date('Y-m-d', $monday + ($seconds_in_a_day * $i)); } return $dates; } $date = '07-10-2008'; $dates = week_from_monday($date); print_r($dates); ?></code>
Fungsi yang dipertingkatkan ini membolehkan lebih fleksibiliti dalam mendapatkan semula tarikh sesuatu minggu, diberikan tarikh tertentu dalam minggu tersebut.
Atas ialah kandungan terperinci Bagaimana Mengeluarkan Hari dalam Minggu dengan Cekap daripada Nombor Minggu Diberi dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!