From: jsteen at timecom dot com
Operating system: win32
PHP version: 4.3.1
PHP Bug Type: Date/time related
Bug description: 1.1.1970 <> 24 hours in [gm]mktime
1.1.1970 does not have 24 hours!
---------------------------------------------
for ($i = 1 ; $i< 365; $i++){
$date = mktime(0,0,0,1,$i,1970);
$date1 = mktime(0,0,0,1,$i+1,1970);
echo "<br> $i: " .gmdate("Y m d", $date) . " ";
echo ($date1 - $date ) /3600 ." h";
}
---------------------------------------------
1: 23.0002777778 h
2: 1970 01 01 24 h
3: 1970 01 02 24 h
4: 1970 01 03 24 h
...
---------------------------------------------
for ($i = 1 ; $i< 365; $i++){
$date = gmmktime(0,0,0,1,$i,1970);
$date1 = gmmktime(0,0,0,1,$i+1,1970);
echo "<br> $i: " .gmdate("Y m d", $date) . " ";
echo ($date1 - $date ) /3600 ." h";
}
---------------------------------------------
1: 24.0002777778 h
2: 1970 01 02 24 h
3: 1970 01 03 24 h
4: 1970 01 04 24 h
...
---------------------------------------------
--
Edit bug report at http://bugs.php.net/?id=22635&edit=1
--
Try a CVS snapshot: http://bugs.php.net/fix.php?id=22635&r=trysnapshot
Fixed in CVS: http://bugs.php.net/fix.php?id=22635&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=22635&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=22635&r=needtrace
Try newer version: http://bugs.php.net/fix.php?id=22635&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=22635&r=support
Expected behavior: http://bugs.php.net/fix.php?id=22635&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=22635&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=22635&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=22635&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=22635&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=22635&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=22635&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=22635&r=gnused