EMZETT.
Login

Zeitzonen und Kalenderfallen

Kurz: Zeit ist in der Programmierung tückisch: Zeitzonen, Sommerzeit, Schaltjahre und Schaltsekunden sorgen für Fehler, die nur zu bestimmten Zeitpunkten auftreten.

Genauer: Die wichtigste Regel lautet: intern immer in UTC speichern und rechnen, nur zur Anzeige in die Zeitzone des Nutzers umwandeln. So bleiben Zeitpunkte eindeutig und vergleichbar.

Im Detail

  • Sommerzeit: An einem Tag im Jahr hat ein Tag 23, an einem anderen 25 Stunden. „Morgen gleiche Uhrzeit” ist nicht immer +24 Stunden.
  • Zeitzonen-Namen: Europe/Berlin (IANA-Name) statt fester Abkürzungen wie „CET”, denn Regeln ändern sich.
  • Formate: ISO 8601 (2026-10-13T08:00:00Z) ist eindeutig und sortierbar.
  • Daten ohne Uhrzeit: Ein Geburtstag ist ein Kalendertag, kein Zeitpunkt. Als UTC-Mitternacht gespeichert, rutscht er in anderen Zonen auf den Vortag.
  • Schaltjahr: 29. Februar prüfen. Die Regel: durch 4 teilbar, außer durch 100, es sei denn durch 400.
  • Unix-Zeit: Sekunden seit dem 1. Januar 1970 UTC. 32-Bit-Zähler laufen 2038 über.

Siehe auch: UTF-8 und Zeichenkodierung