note 61897 deleted from function.getdate by bjori

From: Date: Tue, 04 Apr 2006 14:05:51 +0000
Subject: note 61897 deleted from function.getdate by bjori
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-107290@lists.php.net to get a copy of this message
Note Submitter: Richard ---- This gives the weeknr (ISO std) of a timestamp, beware: sometimes jan 1-3 have weeknr in previous year: function weeknr($timestamp) { $info = getdate($timestamp); $year = $info["year"]; // iso 8601 $date4jan = mktime(0,0,0,1,4,$year); $jan4 = getdate($date4jan); $jan4["wday"] = ($jan4["wday"]+6)%7; // monday = day 0 if ($info["mon"] == 1 && $info["mday"] <= 3 - $jan4["wday"]) { // days before the monday in week of 4-1 count with prev year $year--; $date4jan = mktime(0,0,0,1,4,$year); $jan4 = getdate($date4jan); $jan4["wday"] = ($jan4["wday"]+6)%7; // monday = day 0 } $startwk1 = $date4jan-(24*3600)*$jan4["wday"]; $wk = ($timestamp-$startwk1)/(7*24*3600)+1; return array("week" => floor($wk), "year" => $year); }

« previous php.notes (#107290) next »