【PHP8.x】intervalプロパティの使い方
intervalプロパティの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
DatePeriodクラスのintervalプロパティは、DatePeriodオブジェクトが反復処理を行う際に使用するDateIntervalオブジェクトを保持するプロパティです。DatePeriodは、開始日時、終了日時、そしてこのintervalプロパティで指定された間隔に基づいて、一連の日時を生成します。
このプロパティは読み取り専用であり、DatePeriodオブジェクトの構築時に指定されたDateIntervalオブジェクトを後から変更することはできません。DateIntervalオブジェクトは、日時間の差を表すオブジェクトであり、年、月、日、時、分、秒などの単位で間隔を指定できます。
例えば、毎週月曜日の日付を1年間生成するDatePeriodオブジェクトを作成する場合、開始日時をその年の最初の月曜日に設定し、終了日時を年末に設定し、intervalプロパティに「1週間」を表すDateIntervalオブジェクトを設定します。DatePeriodオブジェクトが反復処理されるたびに、intervalプロパティに保持されたDateIntervalオブジェクトが開始日時に加算され、次の日時が生成されます。
intervalプロパティは、DatePeriodオブジェクトの動作を決定する重要な要素であり、DatePeriodオブジェクトを使用する際には、適切なDateIntervalオブジェクトを設定する必要があります。このプロパティに設定されたDateIntervalオブジェクトに基づいて、DatePeriodオブジェクトが生成する日時系列が決定されるため、期待通りの日時系列を生成するためには、DateIntervalオブジェクトを正確に指定することが重要です。DatePeriodオブジェクトを利用して、特定の期間における定期的なイベントやスケジュールを扱う場合に、このintervalプロパティが効果的に活用できます。
構文(syntax)
1<?php 2$start = new DateTime('2024-01-01'); 3$end = new DateTime('2024-01-10'); 4$interval = new DateInterval('P1D'); 5$period = new DatePeriod($start, $interval, $end); 6 7echo $period->interval->format('%d days'); 8?>
引数(parameters)
戻り値(return)
DateInterval
DatePeriod オブジェクトが表す期間の間隔を表す DateInterval オブジェクトを返します。