Wie berechnest du denn das datum?
Hast du in deinem projekt irgendwo global
date_default_timezone_set('Europe/Berlin');
gesetzt um sichgerzugehen das dein system bescheid weiss?
Ich benutzte Laravel, was die Carbon datetime libary hat. Finde ich intuitiver damit zu arbeiten, as die standard PHP funktionen.
Damit dann eben:
$dt_created = Carbon::parse('2024-04-03 12:00:00', 'Europe/Berlin');
$dt_now = Carbon::now('Europe/Berlin');
und dann damit dann eben vergleichen ob abgelaufen, gueltig oder wieviel zeit noch bleibt.
Ich hatte nur vor kurzem damit zu tun, da die seite eintraege in der zeitzone des nutzers seichern muss, die dann zu einer bestimmten zeit in der selben zeitzone(!) wieder entfernt werden muessen. Das problem war eben, das die seite nutzer in australien, europa und nordamerika hat und dementsprechend zeitzonen und servertime beruecksichtigt werden mussten.