Edit report at http://bugs.php.net/bug.php?id=53662&edit=1
ID: 53662 Comment by: smenjas at gmail dot com Reported by: smenjas at gmail dot com Summary: strtotime() returns inconsistent output on 64 bit systems Status: Bogus Type: Bug Package: Date/time related Operating System: Ubuntu 10.10 PHP Version: 5.3.4 Block user comment: N Private report: N New Comment: Thanks for the incredibly prompt reply. That makes sense, except that to the best of my knowledge the year zero is not valid in either the Julian or Gregorian calendars. I had assumed that strtotime would return FALSE for invalid dates. On my 32 bit Ubuntu system, this appears to the case. strtotime("2011-01-32") returns FALSE, as opposed to returning the timestamp for "2011-02-01". An in depth reading of the documentation did not clarify how strtotime() should be expected to handle invalid date strings. Previous Comments: ------------------------------------------------------------------------ [2011-01-06 02:57:07] ras...@php.net This is expected. On 64-bit systems the date range supported is much larger than on 32-bit systems. ------------------------------------------------------------------------ [2011-01-06 02:54:19] smenjas at gmail dot com Description: ------------ --- >From manual page: http://www.php.net/function.strtotime --- strtotime() produces different output on 32 and 64 bit systems running PHP 5.3. This affects the "zero date" ("0000-00-00 00:00:00") as well as dates outside the traditional 32 date range. strtotime("0000-00-00 00:00:00") returns FALSE on a 32 bit system. strtotime("0000-00-00 00:00:00") returns -62169955200 on a 64 bit system. Test script: --------------- <?php var_export(strtotime("0000-00-00 00:00:00")); ?> Expected result: ---------------- On 64 bit systems, I would expect strtotime("0000-00-00 00:00:00") to return FALSE as it does on 32 bit systems. Actual result: -------------- On 64 bit systems, strtotime("0000-00-00 00:00:00") returns -62169955200. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/bug.php?id=53662&edit=1