列出兩個日期之間的月份
在各種應用程式中,有必要列出或迭代指定日期範圍內的月份。為了實現這一目標,我們提出了兩種 PHP 解決方案,以滿足不同的 PHP 版本。
PHP 5.3 及更高版本
$start = new DateTime('2010-12-02');
$start->modify('first day of this month');
$end = new DateTime('2012-05-06');
$end->modify('first day of next month');
$interval = DateInterval::createFromDateString('1 month');
$period = new DatePeriod($start, $interval, $end);
foreach ($period as $dt) {
echo $dt->format("Y-m") . "
\n";
}
PHP 5.4 或更新版本
$start = (new DateTime('2010-12-02'))->modify('first day of this month');
$end = (new DateTime('2012-05-06'))->modify('first day of next month');
$interval = DateInterval::createFromDateString('1 month');
$period = new DatePeriod($start, $interval, $end);
foreach ($period as $dt) {
echo $dt->format("Y-m") . "
\n";
}
請注意,將開始日期和結束日期修改為每月的第一天可以確保所需月份的完整列表,防止如果當前日期高於最後一天則可能會跳過二月的情況。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3