0

各月の日付範囲を表示しようとしています。

例えば、

2013 年 11 月 -- 2013-11-01 - 2013-11-30 //11 月の月

2013 年 12 月 -- 2013-12-01 - 2013-12-31 //12 月の場合

2013 年 1 月 -- 2014-01-01 - 2014-01-31 // 2014 年 1 月の場合

2014年12月まで

PHP コード:

$currentmonth = date('n');
$monthstoloop = $currentmonth + 13;

for ($m=$currentmonth; $m<=$monthstoloop; $m++) {
$month = date('F', mktime(0,0,0,$m, 1, date('Y')));
$year = date('Y', mktime(0,0,0,$m, 1, date('Y')));
echo $month."  ".$year;
}

年のすぐ横に月の範囲を表示する方法が見つかりません。提案してください。

4

3 に答える 3

1

DateTime クラスを使用すると簡単です。

$start = new DateTime('2013-11-01');
$end = new DateTime('2014-12-01');

while ($start <= $end) {
    echo $start->format('F Y -- Y-m-d - Y-m-t').'<br/>';
    $start->modify('+1 month');
}

出力:

November 2013 -- 2013-11-01 - 2013-11-30
December 2013 -- 2013-12-01 - 2013-12-31
January 2014 -- 2014-01-01 - 2014-01-31
February 2014 -- 2014-02-01 - 2014-02-28
March 2014 -- 2014-03-01 - 2014-03-31
April 2014 -- 2014-04-01 - 2014-04-30
May 2014 -- 2014-05-01 - 2014-05-31
June 2014 -- 2014-06-01 - 2014-06-30
July 2014 -- 2014-07-01 - 2014-07-31
August 2014 -- 2014-08-01 - 2014-08-31
September 2014 -- 2014-09-01 - 2014-09-30
October 2014 -- 2014-10-01 - 2014-10-31
November 2014 -- 2014-11-01 - 2014-11-30
December 2014 -- 2014-12-01 - 2014-12-31

デモ!

于 2013-11-09T09:43:50.483 に答える