3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php /** * @link */ /** * @param $seconds * * @return string +\d\d\d\d / -\d\d\d\d */ function format_offset($seconds) { $minutes = (int) ($seconds / 60); $hours = (int) ($minutes / 60); $leftover = abs($minutes - $hours * 60); return sprintf("%+03d%02d", $hours, $leftover); } $zones = array('EDT', 'EST'); foreach ($zones as $zone) { // get offset $timezone = new DateTimeZone($zone); $offset = $timezone->getOffset(new DateTime(null, $timezone)); printf("%s (%s) %s\n", $zone, $timezone->getName(), format_offset($offset)); }
based on 2mC3L
Output for 5.5.24 - 5.6.28, 7.0.0 - 7.1.0
EDT (EDT) -0500 EST (EST) -0500
Output for hhvm-3.12.0
EDT (America/New_York) -0500 EST (EST) -0500
Output for hhvm-3.10.0
EDT (America/New_York) -0400 EST (EST) -0500
Output for 5.2.0 - 5.4.45
EDT (America/New_York) -0400 EST (America/New_York) -0400
Output for 5.0.0 - 5.1.6
Fatal error: Class 'DateTimeZone' not found in /in/qgOPi on line 22
Process exited with code 255.
Output for 4.3.2 - 4.4.9
Fatal error: Cannot instantiate non-existent class: datetimezone in /in/qgOPi on line 22
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Cannot instantiate non-existent class: datetimezone in /in/qgOPi on line 22