разница между двумя парами дат в переполнении стека

Я пытался понять разницу между двумя свиданиями. К сожалению, я получаю только целое число, а не отформатированный как требуется. Я пробовал несколько способов, но не повезло. Мне нужно вычесть $ HoldInterval из $ TactInterval, но система получает ошибку.
Ниже приведен мой код, который не работает как требуется.
Я получаю запрос 2 вместо 02х30м. Пожалуйста, посоветуйте, в чем проблема. Благодарю.

$hd1 = new Datetime('2016-10-18 08:30:00');
$hd2 = new Datetime('2016-10-18 12:00:00');
$HoldInterval = $hd2->diff($hd1);

$d1 = new Datetime('2016-10-18 09:00:00');
$d2 = new Datetime('2016-10-18 10:00:00');
$TactInterval = $d2->diff($d1);
//$interval = $TactInterval - $HoldInterval ); // This is not working....

$dt1 = $TactInterval->format('%Hh%Im');
$dt2 = $HoldInterval->format('%Hh%Im');

echo $dt1."<br>";
echo $dt2."<br>";

$dt3 = $dt2 - $dt1; // This is working but only a whole number shows. it show be 02h30m.

//$dt4 = $dt3->format('%Hh%Im'); // does not work when formated.

echo $dt3."<br>";

0

Решение

$s = new DateTime();
$e = new DateTime();
$s->add($HoldInterval);
$e->add($TactInterval);
$diff = $e->diff($s);
echo $diff->format('%Hh%Im');

DEMO

2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector