ID: 20594 Updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] -Status: Open +Status: Bogus Bug Type: Date/time related Operating System: FreeBSD PHP Version: 4.2.3 New Comment:
right, not a bug -> bogus Previous Comments: ------------------------------------------------------------------------ [2002-11-23 08:26:59] [EMAIL PROTECTED] As stated in the manual, date("W", ...) returns the ISO8601 week number. The first week number of any year is always 1. But January, 1st is sometimes not in the first week of a year, but in the last week of the previous year. See e.g. <http://www.phys.uu.nl/~vgent/calendar/isocalendar.htm> for details. ------------------------------------------------------------------------ [2002-11-23 01:09:02] [EMAIL PROTECTED] using date and the "W" (shows the week number) switch. Will return the FIRST week number differantly depending on the year. date("W", mktime(0,0,0,1,1,2000)); will return 0 date("W", mktime(0,0,0,1,1,2001)); returns 1. Only differance is the year. Here is a list of years and there first week vaules, including Leap year. for ($q=2001; $q<2021; $q++) { $test1= date("W", mktime(0,0,0,1,1,$q)); $leap1= date("L", mktime(0,0,0,1,1,$q)); echo "Year: $q WeekNum: $test1 LeapYear: $leap1<br>"; } Year: 2001 WeekNum: 1 LeapYear: 0 Year: 2002 WeekNum: 1 LeapYear: 0 Year: 2003 WeekNum: 1 LeapYear: 0 Year: 2004 WeekNum: 1 LeapYear: 1 Year: 2005 WeekNum: 0 LeapYear: 0 Year: 2006 WeekNum: 0 LeapYear: 0 Year: 2007 WeekNum: 1 LeapYear: 0 Year: 2008 WeekNum: 1 LeapYear: 1 Year: 2009 WeekNum: 1 LeapYear: 0 Year: 2010 WeekNum: 0 LeapYear: 0 Year: 2011 WeekNum: 0 LeapYear: 0 Year: 2012 WeekNum: 0 LeapYear: 1 Year: 2013 WeekNum: 1 LeapYear: 0 Year: 2014 WeekNum: 1 LeapYear: 0 Year: 2015 WeekNum: 1 LeapYear: 0 Year: 2016 WeekNum: 0 LeapYear: 1 Year: 2017 WeekNum: 0 LeapYear: 0 Year: 2018 WeekNum: 1 LeapYear: 0 Year: 2019 WeekNum: 1 LeapYear: 0 Year: 2020 WeekNum: 1 LeapYear: 1 ------------------------------------------------------------------------ [2002-11-23 01:08:31] [EMAIL PROTECTED] using date and the "W" (shows the week number) switch. Will return the FIRST week number differantly depending on the year. date("W", mktime(0,0,0,1,1,2000)); will return 0 date("W", mktime(0,0,0,1,1,2001)); returns 1. Only differance is the year. Here is a list of years and there first week vaules, including Leap year. for ($q=2001; $q<2021; $q++) { $test1= date("W", mktime(0,0,0,1,1,$q)); $leap1= date("L", mktime(0,0,0,1,1,$q)); echo "Year: $q WeekNum: $test1 LeapYear: $leap1<br>"; } Year: 2001 WeekNum: 1 LeapYear: 0 Year: 2002 WeekNum: 1 LeapYear: 0 Year: 2003 WeekNum: 1 LeapYear: 0 Year: 2004 WeekNum: 1 LeapYear: 1 Year: 2005 WeekNum: 0 LeapYear: 0 Year: 2006 WeekNum: 0 LeapYear: 0 Year: 2007 WeekNum: 1 LeapYear: 0 Year: 2008 WeekNum: 1 LeapYear: 1 Year: 2009 WeekNum: 1 LeapYear: 0 Year: 2010 WeekNum: 0 LeapYear: 0 Year: 2011 WeekNum: 0 LeapYear: 0 Year: 2012 WeekNum: 0 LeapYear: 1 Year: 2013 WeekNum: 1 LeapYear: 0 Year: 2014 WeekNum: 1 LeapYear: 0 Year: 2015 WeekNum: 1 LeapYear: 0 Year: 2016 WeekNum: 0 LeapYear: 1 Year: 2017 WeekNum: 0 LeapYear: 0 Year: 2018 WeekNum: 1 LeapYear: 0 Year: 2019 WeekNum: 1 LeapYear: 0 Year: 2020 WeekNum: 1 LeapYear: 1 ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=20594&edit=1