php DateTimeクラス diff関数

diff関数を使って差分をどのように扱えるかを調べる
diff関数はDateIntervalクラスの返り値を返す

$diff = $date1->diff($date2);
Log::error($diff);

/*
DateInterval Object
(
    [y] => 0
    [m] => 2
    [d] => 0
    [h] => 0
    [i] => 0
    [s] => 0
    [f] => 0
    [weekday] => 0
    [weekday_behavior] => 0
    [first_last_day_of] => 0
    [invert] => 0
    [days] => 61
    [special_type] => 0
    [special_amount] => 0
    [have_weekday_relative] => 0
    [have_special_relative] => 0
)
*/

y

年の差分

m

月の差分

d

日の差分

h

時間の差分

i

分の差分

s

秒の差分

f

マイクロ秒(=1秒の100万分の1)の差分

invert

date2の方が昔の場合はinvert=1それ以外ではinvert=2

days

date1とdate2の間の日数。
2/27と3/1を比べると$diff->dの場合26、$diff->daysの場合2と出力されるので注意 PHPのDateTimeで日付差分を得る時は、dではなくdaysを使う。