Bug #11555 Updated: date() format addition

From: Date: Wed, 20 Jun 2001 12:53:13 +0000
Subject: Bug #11555 Updated: date() format addition
Groups: php.dev 
Request: Send a blank email to php-dev+get-57375@lists.php.net to get a copy of this message
ID: 11555 Updated by: derick Reported By: martin@humany.com Old-Status: Closed Status: Open Bug Type: Feature/Change Request Operating system: PHP Version: 4.0.5 Assigned To: Comments: Not closed... Previous Comments: --------------------------------------------------------------------------- [2001-06-20 08:52:32] derick@php.net You can use the strftime function already, it's the %W modifier. But it would be useful if date would support it indeed. --------------------------------------------------------------------------- [2001-06-20 04:44:17] martin@humany.com i live in sweden, where displaying weeknumbers in calendars of any sort is common. the following code does the work, tho i'd be very happy if it could be supported to be returned from the date() function. switch(date("w",mktime(0,0,0,$mon,$daycnt+1,$year))) { case 1: $daysub=0; break; case 2: $daysub=1; break; case 3: $daysub=2; break; case 4: $daysub=3; break; case 5: $daysub=4; break; case 6: $daysub=5; break; case 0: $daysub=6; break; } $weeknumber=round((date("z", mktime(0,0,0, date("m"),date("d")+1-$daysub,date("Y")))+7)/7); if($weeknumber==53) { //some years have 53 weeks & some 52 //so we check next weeks weeknumber, if its 1 this is week 53, otherwise, this is week 1. switch(date("w",mktime(0,0,0,date("m"),date("d")+8,date("Y")))) { case 1: $daysub=0; break; case 2: $daysub=1; break; case 3: $daysub=2; break; case 4: $daysub=3; break; case 5: $daysub=4; break; case 6: $daysub=5; break; case 0: $daysub=6; break; } $tmpweeknumber=round( (date("z", mktime(0,0,0, date("m"), date("d")+8-$daysub, date("Y")))+7)/7); if($tmpweeknumber==1) $weeknumber=53; else $weeknumber=1; } --------------------------------------------------------------------------- [2001-06-19 05:41:56] martin@humany.com i live in sweden, where displaying weeknumbers in calendars of any sort is common. the following code does the work, tho i'd be very happy if it could be supported to be returned from the date() function. the algorithm is (mondaynumber+7)/7 where mondaynumber is the day of the year of the monday of the current year switch(date("w")) { case 1: $daysub=0; break; case 2: $daysub=1; break; case 3: $daysub=2; break; case 4: $daysub=3; break; case 5: $daysub=4; break; case 6: $daysub=5; break; case 0: $daysub=6; break; } $weeknumber=(date ("z", mktime(0,0,0, date("m"), date("d")-$daysub, date("Y")) )+7)/7; --------------------------------------------------------------------------- ATTENTION! Do NOT reply to this email! To reply, use the web interface found at http://bugs.php.net/?id=11555&edit=2

« previous php.dev (#57375) next »