Wie wäre es mit folgender Lösung
Du verwendest 3 Fälle.
Nachdem Du woche und Jahr gegeben hast kannst Du davon ausgehen, dass einer Ser Fälle richtig sein wird:
- Tag (Woche*7) des Jahres $year ist in der gesuchten Woche
- Tag (Woche*7-7) des Jahres $year ist in der gesuchten Woche
- Tag (Woche*7+7) des Jahres $year ist in der gesuchten Woche
das bringt uns schon mal ein Stück weiter…
denn jetzt haben wir 3 verschiedene Tageswerte die wir einsetzen können.
Setzen wir diese jetzt als $now in diese Formel ein
$this = date(„W“,mktime(0,0,0,1,$now,$year));
so erhalten wir für $this einen Wochenwert. Dieser kann mit der Variable des Wochenwertes verglichen werden. Stimmt sie überein dann wird der timestamp aus $nennmichwieduwillst = mktime(0,0,0,1,$now,$year) verwendet um den Wochentag zu ermitteln, den die Berechnung ausgegeben hat.
$öhm = date(„w“,$nennmichwieduwillst) ergibt jetzt den Tag der Woche wobei Sonntag 0 und Samstag 6 bekommt. Jetzt ist halt die Frage wann die Woche jeweils beginnt… Nachdem PHP nach ISO-8601 den Montag als Wochenanfang verwendet ist das jetzt ein guter Ansatz um weiterzumachen.
Den Fall $öhm==0 müsste man dann ausklammern, ansonsten kann man (wenn ich jetzt keinen Fehler in der Datumsberechnung mache) sagen dass 7-$öhm den Aufschlag gibt, der dann noch zu dem passenden $now-Wert aufgeschlagen werden muss um per erneutem mktime-Befehl jetzt das Datum des letzten Tages der Woche auszugeben…
Hoffe dass ich logisch jetzt keinen Fehler gemacht habe ^^