Ein Tipp: Speicher dein als UNIX-Timestamp.
Sprich: Du hast eine Zahl mit ca. 10 Stellen, die die Zeit in Sekunden seit dem 1.1.1970 wiedergibt.
1.1.1970 0 Uhr GMT. Insbesondere letztere Angabe ist ein kleines, aber feines Detail, das für Verdruss sorgen kann :)
mit getdate() kannst du dir aus der Zahl dann ganz einfach deine benötigten Elemente raus extrahieren. z.B. Wochentag, Monatstag, Monat, Jahr, Sekunde, Minute, Stunde und noch mehr.
getdate() hilft ihm nicht viel. Es ist einfacher, beide Daten (mit gleicher Uhrzeit, z.B. 0 Uhr) mittels mktime() in besagte Sekundenzahl umzuwandeln und dann zu prüfen, ob die Differenz der beiden Zeiten durch drei Tage (genauer gesagt deren Äquivalent in Sekunden) ohne Rest teilbar ist (Rest: Modulo, Operator %).
Das Verfahren hat allerdings seine Tücken: Wie oben bereits angedeutet, ist diese Sekundenzahl in Greenwhich-Zeit (GMT) - und die kennt keine Sommer-/Winterzeitumstellung. Hingegen gibt es hierzulande zwei Tage im Jahr, die statt 24 Stunden 25 bzw. 23 Stunden haben. Beachtet man das beim Ausrechnen der Sekunden für "drei Tage" nicht (die ja in GMT-Zeit sein müssen, nicht in lokaler Zeit), bekommt man ein falsches Ergebnis.
Da es hier aber nur um Einheiten von Tagen und mehr geht, kann man hier auch auf gmmktime() zurückgreifen. Diese Funktion rechnet direkt in GMT, unerwartete "Umrechnungsfehler" fallen weg.
Gruß,
soenk.e