Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengira Hari dalam Seminggu dalam PHP Diberi Nombor Minggu atau Tarikh Tertentu?
Mengira Hari Dalam Seminggu
Apabila diberi nombor minggu, seperti yang diperolehi dari tarikh -u %W, kita mungkin perlu mengira hari dalam minggu itu, bermula dari hari Isnin. Ini membolehkan kami menjana senarai tarikh tertentu dalam minggu itu.
Pelaksanaan PHP
Dalam PHP, kami boleh menggunakan gelung untuk menjana tarikh:
<code class="php">$week_number = 40; $year = 2008; for ($day = 1; $day <= 7; $day++) { echo date('m/d/Y', strtotime($year . "W" . $week_number . $day)) . "\n"; }
Output:
10/06/2008 10/07/2008 10/08/2008 10/09/2008 10/10/2008 10/11/2008 10/12/2008
Mendapatkan Tarikh dari Tarikh Diberi
Pendekatan alternatif ialah mendapatkan tarikh minggu tertentu yang diberikan hari tertentu. Sebagai contoh, untuk mendapatkan tarikh minggu yang mengandungi 7 Oktober 2008:
<code class="php">function week_from_monday($date) { // Assuming $date is in format DD-MM-YYYY list($day, $month, $year) = explode("-", $date); // Get the weekday of the given 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; } // Timestamp of the Monday for that week $monday = mktime(0, 0, 0, $month, $day - $numDaysToMon, $year); $seconds_in_a_day = 86400; // Get date for 7 days from Monday (inclusive) for ($i = 0; $i < 7; $i++) { $dates[$i] = date('Y-m-d', $monday + ($seconds_in_a_day * $i)); } return $dates; }
Output:
Array ( [0] => 2008-10-06 [1] => 2008-10-07 [2] => 2008-10-08 [3] => 2008-10-09 [4] => 2008-10-10 [5] => 2008-10-11 [6] => 2008-10-12 )</code>
Atas ialah kandungan terperinci Bagaimana untuk Mengira Hari dalam Seminggu dalam PHP Diberi Nombor Minggu atau Tarikh Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!