php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #20090 Date/POSIX Problem: Two October 27s??
Submitted: 2002-10-25 11:44 UTC Modified: 2002-10-25 11:46 UTC
From: wleoni75 at hotmail dot com Assigned:
Status: Not a bug Package: Date/time related
PHP Version: 4.2.3 OS: Linux
Private report: No CVE-ID: None
 [2002-10-25 11:44 UTC] wleoni75 at hotmail dot com
Having a problem with date(). I simplified the program I am working on
so you can copy and paste the code and see the problem right away.

I start with the month of october and year of 2002 ($month and $year).

I convert that to the POSIX time ($time) of the the first second of
that month.

Then, I keep adding 24*3600 seconds to that time until the end of the
month.

If you run the program, you will see I get TWO 27/10/2002 -- WHY??

WHY? WHY? WHY?


Here is the code:

================ START CODE =======================

$year = "2002";
$month = "10";

$time = mktime (0,0,0,$month,1,$year);

$last_day_of_the_month = date("t",$time);

echo "Last day of the month ($month/$year):
$last_day_of_the_month<br><br>";

for ($day=1;$day<=$last_day_of_the_month;$day++) {

	$new_time = $time + ($day-1)*24*3600;

	echo date("m/d/Y",$new_time);
	echo " (seconds added to original time: ".(($day-1)*24*3600).")";
	echo "<br>";

}

=================== END CODE =====================

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-10-25 11:46 UTC] rasmus@php.net
Congratulations, you have discovered daylight savings time.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat May 04 11:01:32 2024 UTC