3v4l.org

run code in 300+ PHP versions simultaneously
<?php function convertToTimestamp($dateStr) { $dateStr = trim($dateStr); var_dump( function_exists("date_create") ); if (!function_exists('date_create')) { return strtotime($dateStr); } $oDate = date_create($dateStr); if (is_object($oDate)) { #$curErrors = $oDate->getLastErrors(); #print_r($curErrors); #$curErrors = array_filter($curErrors, 'is_numeric'); #$curErrors = (bool)array_sum($curErrors); #if (!$curErrors) { return (int)$oDate->format('U'); #} } return false; } echo convertToTimestamp("2012-01-01"); // 1325376000 echo "<br>"; var_dump( convertToTimestamp("foo") ); // sollte false
Output for 5.2.6 - 5.2.17, 5.3.0 - 5.3.16, 5.4.0 - 5.4.6, 7.2.29 - 7.2.33, 7.3.16 - 7.3.31, 7.4.3 - 7.4.25, 7.4.27 - 7.4.33, 8.0.0 - 8.0.12, 8.0.14 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
bool(true) 1325372400<br>bool(true) bool(false)
Output for 7.3.32 - 7.3.33, 7.4.26, 8.0.13
bool(true) 1325376000<br>bool(true) bool(false)
Output for 5.2.0 - 5.2.5
bool(true) 1325372400<br>bool(true) Warning: date_create(): Failed to parse time string (foo) at position 0 (f): The timezone could not be found in the database in /in/5GnoJ on line 12 int(1346536101)
Output for 5.1.1 - 5.1.6
bool(false) 1325372400<br>bool(false) bool(false)
Output for 5.1.0
Fatal error: fatal flex scanner internal error--end of buffer missed in /in/5GnoJ on line 28
Process exited with code 255.
Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 5.0.0 - 5.0.5
bool(false) 1325372400<br>bool(false) int(-1)

preferences:
190.87 ms | 402 KiB | 217 Q