3v4l.org

run code in 300+ PHP versions simultaneously
<?php function getDiffInHours(\DateTime $earlierDate, \DateTime $laterDate) { $utc = new \DateTimeZone('UTC'); //Avoid side effects $first = clone $earlierDate; $second = clone $laterDate; //First convert to UTC to avoid missing hours due to DST etc $first->setTimezone($utc); $second->setTimezone($utc); $diff = $first->diff($second); return 24 * $diff->days + $diff->h; } $hours = getDiffInHours(new \DateTime(), new \DateTime('+ 31 hours')); var_dump($hours); //31

preferences:
35.93 ms | 402 KiB | 5 Q