PHP に日付が 2 つあるのですが、それらの日付すべてを処理するには foreach ループをどのように実行すればよいでしょうか? 質問する

PHP に日付が 2 つあるのですが、それらの日付すべてを処理するには foreach ループをどのように実行すればよいでしょうか? 質問する

日付から始まり2010-05-01、 で終わります2010-05-10。PHP でこれらすべての日付を反復処理するにはどうすればよいでしょうか?

ベストアンサー1

$begin = new DateTime('2010-05-01');
$end = new DateTime('2010-05-10');

$interval = DateInterval::createFromDateString('1 day');
$period = new DatePeriod($begin, $interval, $end);

foreach ($period as $dt) {
    echo $dt->format("l Y-m-d H:i:s\n");
}

$startこれは、 からまでの定義された期間のすべての日を出力します$end。10 日を含める場合は、$end11 日に設定します。フォーマットは好みに合わせて調整できます。DatePeriod については、PHP マニュアルを参照してください。PHP 5.3 が必要です。

おすすめ記事