- var_dump: documentation ( source)
<?php
$base = new DateTime('2013-01-01');
$date = clone $base;
$date2 = clone $base;
$interval = new DateInterval("P34D"); //34 days
$date2->add($interval); // add 34 days
var_dump($date2->format('r'), $date->diff($date2)->format("%a")); // Expected 34 days , got 34
$date2->add($interval); // add 34 days
var_dump($date2->format('r'), $date->diff($date2)->format("%a")); // Expedted 68 , recived 65
$date = clone $base;
$date2 = clone $base;
$interval = new DateInterval("P34D"); //34 days
$date2->modify("+1 month +3 day"); // add 34 dayss
var_dump($date2->format('r'), $date->diff($date2)->format("%a")); // Expected 34 days , got 34
$date2->modify("+1 month +3 day"); // add 34 days
var_dump($date2->format('r'), $date->diff($date2)->format("%a")); // Expedted 68 , recived 65