Я использую этот код, чтобы вычислить дни, месяцы и т.д. между 2 датамидаты и времени показывает дополнительный день
$datetime1 = new DateTime('2013-12-01');
$datetime2 = new DateTime('2014-08-01');
$interval = $datetime1->diff($datetime2);
$year = $interval->format('%y');
$month = $interval->format('%m');
$day = $interval->format('%d');
var_dump($interval->days, $year, $month, $day);
Выход я получаю:
int(243)
string(1) "0"
string(1) "8"
string(1) "1"
Почему там один день дополнительно? мне кажется, что всего 8 месяцев?
2014-01-01 - 2014-09-01 //8 months 0 days..
2014-04-01 - 2014-12-01 //7 months 30 days...
'верхняя_граница - lower_limit + 1' общая формула – hjpotter92
' 2014-01-01' - '2014-09-01' = 8 месяцев __0__ дней ..' 2014-04-01' - '2014- 12-01' = 7 месяцев 30 дней ... – Sander
Я пробую этот код на phpcodepad.com, и он не дает лишний день. – developerCK