|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2002-09-17 16:35 UTC] derick@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Nov 03 20:00:02 2025 UTC |
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 =====================