PHP: добавить разницу от двух объектов DateTime к другой дате, используя DateTime :: modify - PullRequest
4 голосов
/ 04 марта 2012

Как добавить разницу между двумя объектами DateTime в другой объект DateTime?Я попробовал какой-то код, похожий на приведенный ниже, но он не сработал.

$first_time=new DateTime('01/01/2000 00:00:00');
$second_time=new DateTime('01/01/2000 00:00:50');
$diff=$first_time->diff($second_time);
$time=new DateTime('01/01/2012 12:00:00');
$time->modify('+'.$diff->format('%s').' seconds');
echo $time;
//Should echo: "01/01/2012 12:00:50"

Может кто-нибудь мне помочь?

1 Ответ

3 голосов
/ 04 марта 2012

format() не вычисляет абсолютное количество секунд интервала, оно просто дает вам значения атрибутов intern. Поскольку вы хотите добавить, почему бы просто не использовать add()? diff() возвращает объект DateInterval, и это то, что нужно add().

$first_time=new DateTime('01/01/2000 00:00:00');
$second_time=new DateTime('01/01/2000 00:00:50');
$diff=$first_time->diff($second_time);
$time=new DateTime('01/01/2012 12:00:00');
$time->add($diff);
echo $time;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...