Hallo,
Oder Du könntest mit timestamps arbeiten. Ein Tag hat 24*60*60 Sekunden, eine Woche hat 7*24*60*60 Sekunden.
Ich glaube da kann man Probleme bekommen, wenn der Umbruch von Sommer auf Winterzeit oder umgekehrt dazwischenkommt.
Ich habe das bei mir so gelöst, dass ich mir mit mktime vom Ausgangstag die jeweiligen Serienelemente generiere und sie dann abspeichere.
Ich habe auch eine Funktion wo man alle X. Monate am Y. Tag bzw alle X. Wochen an den Tagen XYZ. einen Eintrag machen lassen kann.
Das sieht bei mir etwas komplizierter aus. Es gibt eine for Schleife die jeden Tag durchgeht und über 2 Hilfsvariablen werden jeweils die Wochenwechsel und die "X.ten Wochen" erkannt.
Die Funktion strtotime kannte ich allerdings noch nicht - vielleicht geht es damit auch einfacher. (Wie ist es da mit der Sommer/Winterzeit?)
Probiere es doch mal so oder so aus und wenn ich zu meiner Lösung noch was schreiben soll dann melde dich nochmal.
Gruß
Alex