Cara Menentukan Bilangan Minggu Hari Dalam Sebulan dalam PHP
Menentukan nombor minggu hari tertentu dalam tempoh sebulan boleh menjadi tugas yang mencabar. Artikel ini menyediakan penyelesaian terperinci kepada masalah ini dalam PHP, membolehkan anda mengenal pasti nombor minggu dengan mudah untuk mana-mana tarikh tertentu.
Penyelesaian:
Fungsi PHP yang disediakan, getWeeks(), mengira bilangan minggu ke dalam bulan untuk tarikh tertentu. Ia memerlukan dua parameter:
The fungsi berfungsi dengan terlebih dahulu mengekstrak tahun dan bulan dari tarikh dan mengira bilangan hari antara tarikh yang ditentukan dan hari pertama bulan itu. Ia kemudiannya berulang sepanjang hari dalam bulan, menyemak sama ada setiap hari jatuh pada hari peralihan yang ditentukan. Jika ya, ia menambah kiraan minggu.
Contoh Penggunaan:
<?php /** * Returns the amount of weeks into the month a date is * @param $date a YYYY-MM-DD formatted date * @param $rollover The day on which the week rolls over */ function getWeeks($date, $rollover) { $cut = substr($date, 0, 8); $daylen = 86400; $timestamp = strtotime($date); $first = strtotime($cut . "00"); $elapsed = ($timestamp - $first) / $daylen; $weeks = 1; for ($i = 1; $i <= $elapsed; $i++) { $dayfind = $cut . (strlen($i) < 2 ? '0' . $i : $i); $daytimestamp = strtotime($dayfind); $day = strtolower(date("l", $daytimestamp)); if($day == strtolower($rollover)) $weeks ++; } return $weeks; } // echo getWeeks("2011-06-11", "sunday"); //outputs 2, for the second week of the month ?>
Penjelasan:
Contoh di atas memanggil fungsi getWeeks() dengan tarikh "2011-06-11" dan hari peralihan "ahad". Keputusannya ialah 2, menunjukkan bahawa 11 Jun 2011 jatuh pada minggu kedua bulan Jun untuk peralihan pada hari Ahad.
Atas ialah kandungan terperinci Bagaimana untuk Menentukan Bilangan Minggu Hari Dalam Sebulan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!