So wandelst du Epoch-Zeit in ein lesbares Datum um

Eine praktische Anleitung zum Umwandeln von Unix-Timestamps in lesbare Daten in gängigen Programmiersprachen, mit Online-Tools und zeitzonenbewussten Beispielen.

Was ist Epoch-Zeit?

Epoch-Zeit (auch Unix-Zeit oder POSIX-Zeit genannt) ist die Anzahl der Sekunden seit dem 1. Januar 1970 um 00:00:00 UTC. Sie ist der universelle Standard zur Darstellung von Zeitpunkten in der Informatik. Praktisch jede Sprache und jedes Betriebssystem unterstützt sie nativ, was sie zum zuverlässigsten Format für das Speichern und Austauschen von Timestamps zwischen Systemen macht.

Schritt 1 — Bestimme das Format deines Timestamps

Bestimme vor dem Umwandeln, ob dein Timestamp in Sekunden oder Millisekunden vorliegt:

  • 10 Stellen (z. B. 1700000000) → Sekunden seit der Unix-Epoch
  • 13 Stellen (z. B. 1700000000000) → Millisekunden seit der Unix-Epoch
  • Im Zweifel durch 1000 teilen und prüfen, ob das Jahr plausibel ist
  • Du kannst den Timestamp auch oben in den Konverter einfügen — er erkennt das Format automatisch

Epoch in Datum umwandeln in JavaScript

Der Date-Konstruktor von JavaScript erwartet Millisekunden. Liegt dein Timestamp in Sekunden vor, multipliziere ihn zuerst mit 1000.

  • new Date(1700000000 * 1000).toISOString() → '2023-11-15T06:13:20.000Z'
  • new Date(1700000000 * 1000).toUTCString() → 'Wed, 15 Nov 2023 06:13:20 GMT'
  • new Date(1700000000 * 1000).toLocaleString('en-US', { timeZone: 'America/New_York' })
  • new Date(1700000000000).getTime() → 1700000000000 (milliseconds back)

Epoch in Datum umwandeln in Python

Das datetime-Modul von Python bietet fromtimestamp() für lokale Zeit und utcfromtimestamp() für UTC. Für explizite Zeitzonen nutze den Parameter timezone.utc.

  • datetime.datetime.fromtimestamp(1700000000) → local timezone
  • datetime.datetime.fromtimestamp(1700000000, tz=datetime.timezone.utc) → UTC (Python 3.2+)
  • datetime.datetime.fromtimestamp(1700000000).strftime('%Y-%m-%d %H:%M:%S') → formatted string
  • datetime.datetime.fromtimestamp(1700000000, tz=datetime.timezone.utc).isoformat() → ISO 8601

Epoch in Datum umwandeln in PHP

Die Funktion date() und die Klasse DateTime von PHP unterstützen Unix-Timestamps direkt.

  • date('Y-m-d H:i:s', 1700000000) → '2023-11-15 06:13:20' (server's local timezone)
  • gmdate('Y-m-d H:i:s', 1700000000) → '2023-11-15 06:13:20' (always UTC)
  • $dt = new DateTime(); $dt->setTimestamp(1700000000); $dt->format('c') → ISO 8601

Epoch in Datum umwandeln in Go

Das time-Paket von Go wandelt Unix-Timestamps mit time.Unix(seconds, nanoseconds) um.

  • time.Unix(1700000000, 0) → time.Time in local timezone
  • time.Unix(1700000000, 0).UTC() → force UTC
  • time.Unix(1700000000, 0).Format(time.RFC3339) → '2023-11-15T06:13:20Z'
  • time.Unix(1700000000, 0).Format('2006-01-02 15:04:05') → custom layout

Häufige Fehler beim Umwandeln von Epoch-Zeit

Die häufigsten Fehler bei Unix-Timestamps:

  • Vergessen, Sekunden in JavaScript mit 1000 zu multiplizieren — new Date(1700000000) ergibt das Jahr 1970, nicht 2023
  • JavaScript-Millisekunden direkt als Sekunden in einer serverseitigen Sprache verwenden
  • Keine Zeitzone angeben und sich auf die des Servers verlassen, die je nach Umgebung variiert
  • Timestamps als Strings statt als Ganzzahlen speichern, was numerische Vergleiche und Arithmetik zerstört

FAQ zu Epoch in Datum

Wie wandle ich Epoch-Zeit in ein Datum um?
Bestimme, ob der Wert in Sekunden (10 Stellen) oder Millisekunden (13 Stellen) vorliegt, und wandle ihn mit der Datums-API deiner Sprache um — new Date(seconds * 1000) in JavaScript, datetime.fromtimestamp(seconds, tz=timezone.utc) in Python, oder füge ihn oben in den Konverter ein.
Warum wird mein Epoch-Timestamp zu 1970?
Du hast einen Sekundenwert an eine Funktion übergeben, die Millisekunden erwartet — meist das new Date() von JavaScript. Multipliziere den 10-stelligen Sekundenwert zuerst mit 1000.
Soll ich Epoch-Zeit in UTC oder lokale Zeit umwandeln?
Nutze UTC für Logs, APIs und serverübergreifende Vergleiche und wandle nur für die Anzeige in die lokale Zeitzone des Nutzers um. Der Epoch-Wert selbst ist zeitzonenneutral.