Bug #16536 Updated: Give me inconsisten results

From: Date: Thu, 11 Apr 2002 18:34:58 +0000
Subject: Bug #16536 Updated: Give me inconsisten results
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-4690@lists.php.net to get a copy of this message
ID: 16536 Updated by: hholzgra@php.net Reported By: james@jimijon.com -Status: Open +Status: Bogus Bug Type: Date/time related Operating System: mac os x PHP Version: 4.1.2 New Comment: The bug system is not the appropriate forum for asking support questions. For a list of a range of more appropriate places to ask for help using PHP, please visit http://www.php.net/support.php Previous Comments: ------------------------------------------------------------------------ [2002-04-11 14:28:48] james@jimijon.com $today_var = getdate(); $today_sec = mktime(0,0,0,date("m"),date("d"),date("Y"),1); $offset = ($today_var['wday']-0) * 86400 ; $first_day = $today_sec - $offset; $this_week_first_date = date("ymd", $first_day); $path=$this_week_first_date; Still gives the wrong result.. Doesn't anybody have a reliable piece of code to Get the Sunday of the current week, this week it should be the 7th not the 6th! Now this week however this code works: date("ymd", mktime(0,0,0,$mnth,$dy-date("w",mktime(0,0,0,$mnth,$dy,$yr)),$yr)) What gives? A real piece of code that works reliably still needed for me and for sure everybody. ------------------------------------------------------------------------ [2002-04-11 12:59:47] hholzgra@php.net Guess it worked last week only due to the daylight saving switch which compensated an off-by-one error in your code. *Every* piece of code that uses mktime(0,0,0,...) and addition or subtraction of multiples of 86400 has to check for daylight saving time switches or use the optional 7th parameter to mktime() to be correct this database is full of user bugs related to this issue ------------------------------------------------------------------------ [2002-04-11 11:36:14] james@jimijon.com No, just trying to get a consistently working numeric date for the Sunday of that week. yymmdd Though a previos algorithm I had: echo "last sunday: ".date("ymd", mktime(0,0,0,$mnth,$dy-date("w",mktime(0,0,0,$mnth,$dy,$yr)),$yr))."<br is working this week properly, but has in the past worked inproperly.. there is something really goofy going on with the date math in php. Anyone have a ultra reliable Sunday of the Week algorithm? ------------------------------------------------------------------------ [2002-04-11 05:35:21] hholzgra@php.net daylight saving time?! use mktime(12,0,0,...) if you are interested in the date only ------------------------------------------------------------------------ [2002-04-10 16:43:37] james@jimijon.com #get the numeric sunday $today_var = getdate(); $today_sec = mktime(0,0,0,date("m"),date("d"),date("Y")); $offset = $today_var[wday] * 86400 ; $first_day = $today_sec - $offset; $this_week_first_date = date("ymd", $first_day); $path=$this_week_first_date; this just won't get me Sunday this week.. 020407 suddenly at midnight on Monday the 8th it went to 06, this has been running fine for many many weeks now. Help ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=16536&edit=1

« previous php.bugs (#4690) next »