3v4l.org

run code in 300+ PHP versions simultaneously
<?php $begin = new DateTime('1900-01-01'); $end = new DateTime('2100-01-01'); $interval = DateInterval::createFromDateString('1 day'); $period = new DatePeriod($begin, $interval, $end); $intlDateFormatter = new IntlDateFormatter("en_US", IntlDateFormatter::MEDIUM, IntlDateFormatter::NONE, "Europe/Malta", 1, "dd/MM/yyyy"); $intlDateFormatter->setLenient(false); foreach ($period as $dt) { $formattedDate = $dt->format("d/m/Y"); $timestamp = $intlDateFormatter->parse($formattedDate); if (intl_get_error_code() != 0) { echo $formattedDate."\n"; echo intl_get_error_message()."\n"; } }
Output for 8.1.28, 8.2.18, 8.3.6
04/06/1916 Date parsing failed: U_PARSE_ERROR 01/04/1917 Date parsing failed: U_PARSE_ERROR 10/03/1918 Date parsing failed: U_PARSE_ERROR 02/03/1919 Date parsing failed: U_PARSE_ERROR 21/03/1920 Date parsing failed: U_PARSE_ERROR 15/06/1940 Date parsing failed: U_PARSE_ERROR 16/03/1947 Date parsing failed: U_PARSE_ERROR 22/05/1966 Date parsing failed: U_PARSE_ERROR 28/05/1967 Date parsing failed: U_PARSE_ERROR 26/05/1968 Date parsing failed: U_PARSE_ERROR 01/06/1969 Date parsing failed: U_PARSE_ERROR 31/05/1970 Date parsing failed: U_PARSE_ERROR 23/05/1971 Date parsing failed: U_PARSE_ERROR 28/05/1972 Date parsing failed: U_PARSE_ERROR 31/03/1973 Date parsing failed: U_PARSE_ERROR 21/04/1974 Date parsing failed: U_PARSE_ERROR
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 04/06/1916 Date parsing failed: U_PARSE_ERROR 01/04/1917 Date parsing failed: U_PARSE_ERROR 10/03/1918 Date parsing failed: U_PARSE_ERROR 02/03/1919 Date parsing failed: U_PARSE_ERROR 21/03/1920 Date parsing failed: U_PARSE_ERROR 15/06/1940 Date parsing failed: U_PARSE_ERROR 16/03/1947 Date parsing failed: U_PARSE_ERROR 22/05/1966 Date parsing failed: U_PARSE_ERROR 28/05/1967 Date parsing failed: U_PARSE_ERROR 26/05/1968 Date parsing failed: U_PARSE_ERROR 01/06/1969 Date parsing failed: U_PARSE_ERROR 31/05/1970 Date parsing failed: U_PARSE_ERROR 23/05/1971 Date parsing failed: U_PARSE_ERROR 28/05/1972 Date parsing failed: U_PARSE_ERROR 31/03/1973 Date parsing failed: U_PARSE_ERROR 21/04/1974 Date parsing failed: U_PARSE_ERROR
Output for 7.4.27 - 7.4.32, 8.0.14 - 8.0.30, 8.1.0 - 8.1.27, 8.2.0 - 8.2.17, 8.3.0 - 8.3.4
03/06/1916 Date parsing failed: U_PARSE_ERROR 01/04/1917 Date parsing failed: U_PARSE_ERROR 10/03/1918 Date parsing failed: U_PARSE_ERROR 02/03/1919 Date parsing failed: U_PARSE_ERROR 21/03/1920 Date parsing failed: U_PARSE_ERROR 15/06/1940 Date parsing failed: U_PARSE_ERROR 16/03/1947 Date parsing failed: U_PARSE_ERROR 22/05/1966 Date parsing failed: U_PARSE_ERROR 28/05/1967 Date parsing failed: U_PARSE_ERROR 26/05/1968 Date parsing failed: U_PARSE_ERROR 01/06/1969 Date parsing failed: U_PARSE_ERROR 31/05/1970 Date parsing failed: U_PARSE_ERROR 23/05/1971 Date parsing failed: U_PARSE_ERROR 28/05/1972 Date parsing failed: U_PARSE_ERROR 31/03/1973 Date parsing failed: U_PARSE_ERROR 21/04/1974 Date parsing failed: U_PARSE_ERROR
Output for 8.0.0 - 8.0.13
Fatal error: Uncaught Error: Class "IntlDateFormatter" not found in /in/GZlSs:9 Stack trace: #0 {main} thrown in /in/GZlSs on line 9
Process exited with code 255.
Output for 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.26, 7.4.33
Fatal error: Uncaught Error: Class 'IntlDateFormatter' not found in /in/GZlSs:9 Stack trace: #0 {main} thrown in /in/GZlSs on line 9
Process exited with code 255.
Output for 5.6.0 - 5.6.40
Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone.' in /in/GZlSs:3 Stack trace: #0 /in/GZlSs(3): DateTime->__construct('1900-01-01') #1 {main} thrown in /in/GZlSs on line 3
Process exited with code 255.

preferences:
224.67 ms | 402 KiB | 300 Q