3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $date = new DateTime('2015-11-11 15:00:00'); $date->setTimezone(new DateTimeZone('CET')); var_dump($date); echo "\n Date timestamp using format(): " . $date->format('U'); echo "\n Date timestamp using getTimestamp(): " . $date->getTimestamp(); echo "\nChanging timezone to CET"; $date->setTimezone(new DateTimeZone('CET')); echo "\n Date timestamp using format(): " . $date->format('U') . ' NB: This has changed?!?!'; echo "\n Date timestamp using getTimestamp(): " . $date->getTimestamp() . ' NB: Now it is back?!?!'; echo "\n Date timestamp using format() again: " . $date->format('U') . ' NB: Now it is back?!?!'; ?>
based on 0bhcY
Output for 7.0.20, 7.1.5 - 7.2.0
object(DateTime)#1 (3) { ["date"]=> string(26) "2015-11-11 15:00:00.000000" ["timezone_type"]=> int(2) ["timezone"]=> string(3) "CET" } Date timestamp using format(): 1447250400 Date timestamp using getTimestamp(): 1447250400 Changing timezone to CET Date timestamp using format(): 1447250400 NB: This has changed?!?! Date timestamp using getTimestamp(): 1447250400 NB: Now it is back?!?! Date timestamp using format() again: 1447250400 NB: Now it is back?!?!
Output for 5.5.14 - 7.0.10, 7.1.0
object(DateTime)#1 (3) { ["date"]=> string(26) "2015-11-11 15:00:00.000000" ["timezone_type"]=> int(2) ["timezone"]=> string(3) "CET" } Date timestamp using format(): 1447254000 Date timestamp using getTimestamp(): 1447250400 Changing timezone to CET Date timestamp using format(): 1447254000 NB: This has changed?!?! Date timestamp using getTimestamp(): 1447250400 NB: Now it is back?!?! Date timestamp using format() again: 1447250400 NB: Now it is back?!?!
Output for 5.5.10 - 5.5.13
object(DateTime)#1 (3) { ["date"]=> string(19) "2015-11-11 15:00:00" ["timezone_type"]=> int(2) ["timezone"]=> string(3) "CET" } Date timestamp using format(): 1447254000 Date timestamp using getTimestamp(): 1447250400 Changing timezone to CET Date timestamp using format(): 1447254000 NB: This has changed?!?! Date timestamp using getTimestamp(): 1447250400 NB: Now it is back?!?! Date timestamp using format() again: 1447250400 NB: Now it is back?!?!
Output for 5.5.0 - 5.5.9
object(DateTime)#1 (3) { ["date"]=> string(19) "2015-11-11 15:00:00" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" } Date timestamp using format(): 1447250400 Date timestamp using getTimestamp(): 1447250400 Changing timezone to CET Date timestamp using format(): 1447250400 NB: This has changed?!?! Date timestamp using getTimestamp(): 1447250400 NB: Now it is back?!?! Date timestamp using format() again: 1447250400 NB: Now it is back?!?!