3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?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())->modify('+ 31 hours')); var_dump($hours);
Output for 5.4.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
int(31)
Output for 5.3.0 - 5.3.29
Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /in/s6HDf on line 15
Process exited with code 255.
Output for 5.1.0 - 5.2.17
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 2 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 2 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 4 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 15 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 15 Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /in/s6HDf on line 15
Process exited with code 255.
Output for 5.0.0 - 5.0.5
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 2 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 2 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 4 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 15 Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 15 Parse error: parse error, unexpected T_OBJECT_OPERATOR in /in/s6HDf on line 15
Process exited with code 255.
Output for 4.4.2 - 4.4.9
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 2 Parse error: syntax error, unexpected T_STRING, expecting ')' in /in/s6HDf on line 2
Process exited with code 255.
Output for 4.3.0 - 4.3.1, 4.3.5 - 4.4.1
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 2 Parse error: parse error, unexpected T_STRING, expecting ')' in /in/s6HDf on line 2
Process exited with code 255.
Output for 4.3.2 - 4.3.4
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /in/s6HDf on line 2 Parse error: parse error, expecting `')'' in /in/s6HDf on line 2
Process exited with code 255.