Calculating start and end dates of a week.
A friend asked "How do I calculate start (monday) and end (sunday) dates from a given week number for a specified year?" Instead of having to come up with your own algorithm you can simply do the following in PHP 5.1 and higher:
<?php
// Monday
echo date(
datetime::ISO8601,
strtotime("2006W37"));
// Sunday
echo date(
datetime::ISO8601,
strtotime("2006W377"));
?>
The format is " year 'W' weeknr ( daynr )?" where the default daynr is 1 being the Monday of that week. The daynr can be in the range 0 to 7. The weeknr is the ISO week number . Please note that the " year '-W' weeknr ( '-' daynr )?" format is only supported in PHP 5.2 and higher.
Comments
Thanks Derek, that is going to make life a lot easier!
Keep it simple and just do strtotime('-1 Sunday',$currentDay);
it is simpler and uses less resources.
or you could use PEAR::Date(), it makes it very easy as well
@Ammar: Why would you want to use a wrapper class in PHP when the extension supports it?
Hey Dereck
thanks for confirming yet again why I love the Internet... I've been playing around with this particular problem for the last few days... any solution I had was not nearly as elegant and simple as this... glad I found this posting...will help tremendously.
echo date("Y-m-d", strtotime(date("Y").'W'.date('W')."7"));
If 1 for daynr represents monday, what does 0 represent? How can it accept values 0-7?
Thnx! Just what I was looking for!
Thank you very much!
Excellent example of exactly what a lot of people need. Please keep this example up for the rest of the PHP newbs like me!
You have just saved me a lot of time on deadline day at work.
Thanks!
Thank you very much. This threat was my first search result: "php calculate start end week"..
Wow. I had no clue about this. Thanks, man!
Very very usefull, I knew about the W weeks implemented in recent php but this is pretty useful, saved me on a thing I have to do at work :)
Excellent...!
Exactly what I was looking for.
Even in 2013 this is very useful, thanks! Saved me much work
Thank you! I was getting very frustrated trying to get my dates to format properly, you're a lifesaver!
Life Line
Put Kilburn Park station node in a more representable location (not at the back of the building where you can't get in)
Merge branch 'v2022'
Go with 2022.17
Merge branch 'v2022'
Update PHP merging script
Update data to 2026c
Kensal Green sidewalks: Fix alignment and connectivity near station; don't map sidewalks as separate on residential streets for just this tiny section; extend sidewalk mapping on Chamberlayne Road
New building
If you're in London (or Southern England) the ISS is going to make a fly over pass between 23:30 and 23:40 (a little earlier for West of London).
If you're further North than London, the ISS shows further South.
Almost straight overhead. It's going to be bright.
Created a wigs shop
Updated a fitness_centre
Seems I removed the landuse/natural tags
Updated a restaurant
Created a bench
Updated a cafe
But I think my favourite photo was of this Carrion Crow in flight.
The new birds I saw, were mostly too far away to get good photos.
But I saw my first Spoonbill, Corn Bunting, and a flock of Black-tailed Godwits.
I had a lovely walk around RSPB Bowers Marsh yesterday, where I saw some expected birds, and a bunch of new species.
When I got there, there was this welcome committee of Starlings.
#BirdPhotography #nature #BirdsOfFediverse #Birds #Photography #RSPB
RSPB Bowers Marsh
Created 2 benches
I hiked 11.3km in 3h31m08s
Updated a pub
Updated a pub
Updated 4 pubs; Confirmed a pub
Created a restaurant





Shortlink
This article has a short URL available: https://drck.me/csaedoaw-4wr