Znalezienie daty najbliższego konkretnego dnia tygodnia po podanej przez nas dacie w gruncie rzeczy nie jest takie trudne.
Tworząc dla siebie aplikację kalendarz w PHP natknąłem się właśnie na taki zgryz.. Mając datę wyciągniętą z bazy danych chciałem odnaleźć przykładowo datę pierwszego poniedziałku, wtorku itd… po tej dacie z bazy. Na początku myślałem użyć do tego nie wiadomo jak skomplikowane pętle i warunki jednakże najpierw postanowiłem poszperać w manualu..
Rozwiązanie: Data pierwszego poniedziałku po określonej dacie
$data_zbazy='2016-01-14 20:49:00';
$d= new DateTime ($data_zbazy);
$d->modify('next Monday');
echo $d->format ('d-m-Y'); //wynik to 18-01-2016
Prawda, że proste… Gdybyśmy szukali np. soboty to nalezy wpisać oczywiście jej angielski odpowiednik w linijke $d->modify('next Monday'); zamiast ‘Monday’ (‘Saturday’)