3v4l.org

run code in 500+ PHP versions simultaneously
<?php if (!date_default_timezone_set('Europe/Amsterdam')) { throw new Exception('Timezone Europe/Amsterdam does not exist?'); } echo 'Default timezone: '.date_default_timezone_get().PHP_EOL; var_dump(new DateTimeZone(date_default_timezone_get())); $someTimestamp = strtotime('2026-07-03 14:22:17'); echo '--- date'.PHP_EOL; echo date('Y-m-d H:i:s', $someTimestamp).PHP_EOL; echo '--- DateTimeImmutable::createFromTimestamp() defaults to UTC timezone'.PHP_EOL; $dt = DateTimeImmutable::createFromTimestamp($someTimestamp); echo $dt->format('Y-m-d H:i:s').PHP_EOL; var_dump($dt->getTimezone()); echo '--- DateTimeImmutable::createFromTimestamp() workaround for current timezone'.PHP_EOL; $dt = DateTimeImmutable::createFromTimestamp($someTimestamp)->setTimezone(new DateTimeZone(date_default_timezone_get())); echo $dt->format('Y-m-d H:i:s').PHP_EOL; var_dump($dt->getTimezone());
Output for git.master, git.master_jit
Default timezone: Europe/Amsterdam object(DateTimeZone)#1 (2) { ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" } --- date 2026-07-03 14:22:17 --- DateTimeImmutable::createFromTimestamp() defaults to UTC timezone 2026-07-03 12:22:17 object(DateTimeZone)#2 (2) { ["timezone_type"]=> int(1) ["timezone"]=> string(6) "+00:00" } --- DateTimeImmutable::createFromTimestamp() workaround for current timezone 2026-07-03 14:22:17 object(DateTimeZone)#1 (2) { ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" }

This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.

Active branches

Archived branches

Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page


preferences:
40.29 ms | 532 KiB | 4 Q