#27789 [Opn->Bgs]: march returned instead of february with mktime and date

From: Date: Wed, 31 Mar 2004 03:00:06 +0000
Subject: #27789 [Opn->Bgs]: march returned instead of february with mktime and date
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-57172@lists.php.net to get a copy of this message
ID: 27789 Updated by: pollita@php.net Reported By: summercom at comcast dot net -Status: Open +Status: Bogus Bug Type: Date/time related Operating System: Windows XP SP1 PHP Version: 4.3.5 New Comment: Today is the 30th. When using mktime with only four parameters as you are you'll get the hour, minute, second, and month specified for the current day and year. February 30th, because it doesn't actually exist, translates out to March 2nd. Please search the bug database next time. This has been reported and explained several times already. Previous Comments: ------------------------------------------------------------------------ [2004-03-30 21:19:06] summercom at comcast dot net Description: ------------ When using mktime and the date functions it seems that instead of properly returning "February" the two functions used together will return "March" Reproduce code: --------------- <?php $i = 1; do { echo "date(\"F\", mktime(0, 0, 0, $i)); --> ".date("F", mktime(0, 0, 0, $i))."<br />\n"; $i++; } while ($i < 13); ?> Expected result: ---------------- date("F", mktime(0, 0, 0, 1)); --> January date("F", mktime(0, 0, 0, 2)); --> February date("F", mktime(0, 0, 0, 3)); --> March date("F", mktime(0, 0, 0, 4)); --> April date("F", mktime(0, 0, 0, 5)); --> May date("F", mktime(0, 0, 0, 6)); --> June date("F", mktime(0, 0, 0, 7)); --> July date("F", mktime(0, 0, 0, 8)); --> August date("F", mktime(0, 0, 0, 9)); --> September date("F", mktime(0, 0, 0, 10)); --> October date("F", mktime(0, 0, 0, 11)); --> November date("F", mktime(0, 0, 0, 12)); --> December Actual result: -------------- date("F", mktime(0, 0, 0, 1)); --> January date("F", mktime(0, 0, 0, 2)); --> March date("F", mktime(0, 0, 0, 3)); --> March date("F", mktime(0, 0, 0, 4)); --> April date("F", mktime(0, 0, 0, 5)); --> May date("F", mktime(0, 0, 0, 6)); --> June date("F", mktime(0, 0, 0, 7)); --> July date("F", mktime(0, 0, 0, 8)); --> August date("F", mktime(0, 0, 0, 9)); --> September date("F", mktime(0, 0, 0, 10)); --> October date("F", mktime(0, 0, 0, 11)); --> November date("F", mktime(0, 0, 0, 12)); --> December ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=27789&edit=1

« previous php.bugs (#57172) next »