From: noisex at apollo dot lv Operating system: FreeBSD 6.2 PHP version: 5.2.2 PHP Bug Type: Date/time related Bug description: strtotiem bug
Description: ------------ On months with 31th day the strtotime function with +/-$foo month calculates wrong. it calculates -30 days not 31 days. Reproduce code: --------------- Simple example (running today 31 May): <?php for($i=1; $i<=12; $i++) { echo date("Y-M",strtotime("-$i months"))."<br>"; } ?> Expected result: ---------------- 2007-Mar 2007-Feb 2007-Jan 2006-Dec 2006-Nov 2006-Oct 2006-Sep 2006-Aug 2006-Jul 2006-Jun 2006-May 2006-Apr Actual result: -------------- 2007-May 2007-Mar 2007-Mar 2007-Jan 2006-Dec 2006-Dec 2006-Oct 2006-Oct 2006-Aug 2006-Jul 2006-Jul 2006-May -- Edit bug report at http://bugs.php.net/?id=41547&edit=1 -- Try a CVS snapshot (PHP 4.4): http://bugs.php.net/fix.php?id=41547&r=trysnapshot44 Try a CVS snapshot (PHP 5.2): http://bugs.php.net/fix.php?id=41547&r=trysnapshot52 Try a CVS snapshot (PHP 6.0): http://bugs.php.net/fix.php?id=41547&r=trysnapshot60 Fixed in CVS: http://bugs.php.net/fix.php?id=41547&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=41547&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=41547&r=needtrace Need Reproduce Script: http://bugs.php.net/fix.php?id=41547&r=needscript Try newer version: http://bugs.php.net/fix.php?id=41547&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=41547&r=support Expected behavior: http://bugs.php.net/fix.php?id=41547&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=41547&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=41547&r=submittedtwice register_globals: http://bugs.php.net/fix.php?id=41547&r=globals PHP 3 support discontinued: http://bugs.php.net/fix.php?id=41547&r=php3 Daylight Savings: http://bugs.php.net/fix.php?id=41547&r=dst IIS Stability: http://bugs.php.net/fix.php?id=41547&r=isapi Install GNU Sed: http://bugs.php.net/fix.php?id=41547&r=gnused Floating point limitations: http://bugs.php.net/fix.php?id=41547&r=float No Zend Extensions: http://bugs.php.net/fix.php?id=41547&r=nozend MySQL Configuration Error: http://bugs.php.net/fix.php?id=41547&r=mysqlcfg