3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php $date = '28/5/1972'; $formats = [ 'dd/MM/yyyy', 'd/m/Y', ]; foreach ($formats as $format) { var_dump($format); $intlDateFormatter = new IntlDateFormatter( 'en_US', IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN, $format ); $intlDateFormatter->setLenient(false); var_dump($intlDateFormatter->parse($date)); var_dump($intlDateFormatter->getErrorMessage()); $intlDateFormatter->setLenient(true); var_dump($intlDateFormatter->parse($date)); var_dump($intlDateFormatter->getErrorMessage()); } $fmt = new IntlDateFormatter( 'en_US', IntlDateFormatter::FULL, IntlDateFormatter::FULL, 'America/Los_Angeles', IntlDateFormatter::GREGORIAN, 'dd/MM/yyyy' ); echo 'lenient of the formatter is : '; if ($fmt->isLenient()) { echo 'TRUE'; } else { echo 'FALSE'; } $fmt->parse('35/13/1971'); echo "\n Trying to do parse('35/13/1971').\nResult is : " . $fmt->parse('35/13/1971');
based on emYiX
Output for 5.4.11 - 5.5.28, 5.5.31 - 5.5.33, 5.5.35 - 5.6.12, 5.6.16 - 5.6.19, 5.6.21 - 7.0.4, 7.0.6 - 7.2.0
string(10) "dd/MM/yyyy" int(75884400) string(12) "U_ZERO_ERROR" int(75884400) string(12) "U_ZERO_ERROR" string(5) "d/m/Y" int(61977900) string(12) "U_ZERO_ERROR" int(61977900) string(12) "U_ZERO_ERROR" lenient of the formatter is : TRUE Trying to do parse('35/13/1971'). Result is : 66038400
Output for 7.0.5
string(10) "dd/MM/yyyy" Fatal error: Uncaught Error: Class 'IntlDateFormatter' not found in /in/KZOVa:11 Stack trace: #0 {main} thrown in /in/KZOVa on line 11
Process exited with code 255.
Output for 5.5.29 - 5.5.30, 5.5.34, 5.6.13 - 5.6.15, 5.6.20
string(10) "dd/MM/yyyy" Fatal error: Class 'IntlDateFormatter' not found in /in/KZOVa on line 11
Process exited with code 255.
Output for 5.3.21 - 5.3.29
Parse error: syntax error, unexpected '[' in /in/KZOVa on line 4
Process exited with code 255.