2 つの日付の間の月を列挙する
任意の 2 つの日付の間の月を列挙するのは簡単な作業のように思えるかもしれませんが、処理する場合はより複雑になります。エッジケース付き。この問題に効果的に対処するには、さまざまなプログラミング手法を活用できます。
アプローチ 1: PHP 組み込み関数の使用
PHP バージョン 5.3 以降では、 DateTime クラスと DatePeriod クラス。
<code class="php">$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") . "<br>\n"; }</code>
アプローチ 2: 純粋な PHP を使用する (PHP 5.4 以降)
PHP 5.4 以降を使用している場合は、コードは次のとおりです:
<code class="php">$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") . "<br>\n"; }</code>
考慮事項:
以上がPHP で 2 つの日付の間の月をリストするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。