Showing posts with label setISODate. Show all posts
Showing posts with label setISODate. Show all posts

Tuesday, April 9, 2013

Getting Dates From Week Numbers in PHP


Getting Dates From Week Numbers in PHP

Recently I've been building a little project that pulls data from Google Analytics and shows your web statistics in a simple form. One thing I wanted to do was show the data for a quarter, but graphing by day is too chaotic and graphing by month only gives three points, so I wanted to graph by week. This was fine but the data returned by Analytics only gives me the week numbers, and since this project is aimed at demystifying web stats for normal people, it really needs normal dates on it!

Using DateTime::setISODate

I found that the DateTime extension has a method setISODate() which accepts the year and week number, and makes a date you can then use as normal.

$week_start = new DateTime();
$week_start->setISODate($year,$week_no);
echo $week_start->format('d-M-Y');


You can also do this the other way around; if you have a date in PHP, there's the 'W' flag for date() which will return you the week number - very handy!


http://www.lornajane.net/posts/2011/getting-dates-from-week-numbers-in-php