3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php $dt = new DateTime("first day of this month"); var_dump($dt); $dt->modify("-5 month"); var_dump($dt); echo date('m/Y', strtotime("-5 month", strtotime("first day of this month")));
Output for 7.1.0
object(DateTime)#1 (3) { ["date"]=> string(26) "2014-07-01 22:33:55.004002" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } object(DateTime)#1 (3) { ["date"]=> string(26) "2014-02-01 22:33:55.004002" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } 02/2014
Output for 5.4.30 - 5.4.45, 5.5.14 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.0.14
object(DateTime)#1 (3) { ["date"]=> string(26) "2014-07-01 22:33:55.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } object(DateTime)#1 (3) { ["date"]=> string(26) "2014-02-01 22:33:55.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } 02/2014
Output for 5.3.0 - 5.4.29, 5.5.0 - 5.5.13
object(DateTime)#1 (3) { ["date"]=> string(19) "2014-07-01 22:33:55" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } object(DateTime)#1 (3) { ["date"]=> string(19) "2014-02-01 22:33:55" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } 02/2014
Output for 5.2.0 - 5.2.17
Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): Failed to parse time string (first day of this month) at position 10 (o): The timezone could not be found in the database' in /in/Avi3Y:3 Stack trace: #0 /in/Avi3Y(3): DateTime->__construct('first day of th...') #1 {main} thrown in /in/Avi3Y on line 3
Process exited with code 255.
Output for 5.0.0 - 5.1.6
Fatal error: Class 'DateTime' not found in /in/Avi3Y on line 3
Process exited with code 255.
Output for 4.3.2 - 4.4.9
Fatal error: Cannot instantiate non-existent class: datetime in /in/Avi3Y on line 3
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Cannot instantiate non-existent class: datetime in /in/Avi3Y on line 3