$today = new DateTime();
$date = new DateTime('2013-03-10');
$interval = $date->diff($today);
return $interval->days;
// returns 4
$today = new DateTime();
$date = new DateTime('2013-03-10');
$interval = $today->diff($date); // arguments swapped around here
return $interval->days;
// returns 4
なぜこれらの関数は両方とも正の4を返しますか? $ dateが過去の日付の場合、負の数値を返すにはどうすればよいですか?datetime-> daysは常に正の数を返します
'Diff'の戻り値は' DateInterval'オブジェクトです。どのように出力していますか? –
申し訳ありません、私のコードに誤字が入りました。 – JonoB
'DateInterval'オブジェクトには、正か負かを指定する' invert'プロパティがあります:http://php.net/manual/de/class.dateinterval.php –