Aktuelles Datum und Uhrzeit in PHP abrufen: Leitfaden 2025

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Aktuelles Datum und Uhrzeit in PHP abrufen: Best Practices 2025

\n\n

Jeder PHP-Entwickler, vom Anfänger bis zum Senior, hat sich mindestens einmal gefragt: "How do I get the current date and time in PHP?". Diese Frage auf Stack Overflow hat tausende Aufrufe und ist aktueller denn je. Auch 2025, wenn PHP weiterhin eine starke Position in der Webentwicklung hält, ist der korrekte Umgang mit Datum und Uhrzeit nicht nur eine Grundkompetenz, sondern eine Notwendigkeit. Logging, Caching, Reports, API-Integration – all das erfordert präzise Zeitangaben. In diesem Artikel behandeln wir nicht nur die klassischen Funktionen, sondern auch moderne Best Practices, damit dein Code sauber, zuverlässig und bereit für alle Zeitzonen ist.

\n\n

Der Klassiker: date() und time()

\n\n

Der einfachste und schnellste Weg, aktuelles Datum und Uhrzeit in PHP zu erhalten, ist die Funktion date(). Sie akzeptiert einen Format-String und gibt ein formatiertes Datum basierend auf der aktuellen Serverzeit oder einem angegebenen Timestamp zurück.

\n\n
<?php\necho date('Y-m-d H:i:s'); // 2025-04-10 14:30:00\necho date('d.m.Y');        // 10.04.2025\necho date('r');            // Thu, 10 Apr 2025 14:30:00 +0300\n?>
\n\n

Und wenn du nur den Unix-Timestamp (Sekunden seit dem 1. Januar 1970) benötigst? Verwende time():

\n\n
<?php\n$timestamp = time();\necho $timestamp; // 1744273800 (Beispiel)\necho date('Y-m-d H:i:s', $timestamp);\n?>
\n\n

Wichtig: date() verwendet die Zeitzone, die in der php.ini über die Direktive date.timezone oder mit der Funktion date_default_timezone_set() festgelegt wurde. Im Jahr 2025 ist das für einfache Skripte immer noch eine brauchbare Lösung, aber für ernsthafte Projekte gibt es flexiblere Werkzeuge.

\n\n

Der moderne Ansatz: Die DateTime-Klasse

\n\n

Seit PHP 5.2 (das ist schon eine Weile her) gibt es in der Sprache einen objektorientierten Weg, mit Daten zu arbeiten – die DateTime-Klasse. Sie ist zum De-facto-Standard für die meisten Frameworks und CMS geworden. Warum? Weil sie flexibler, lesbarer und sicherer ist.

\n\n
<?php\n$now = new DateTime();\necho $now->format('Y-m-d H:i:s'); // 2025-04-10 14:30:00\n\n// Mit Angabe der Zeitzone\n$now = new DateTime('now', new DateTimeZone('Europe/Berlin'));\necho $now->format('Y-m-d H:i:s'); // 2025-04-10 14:30:00 (MEZ)\n?>
\n\n

DateTime ermöglicht einfache Manipulationen: Tage hinzufügen, Monate abziehen, Objekte vergleichen. Zum Beispiel:

\n\n
<?php\n$today = new DateTime();\n$nextWeek = (new DateTime())->modify('+7 days');\n$diff = $nextWeek->diff($today);\necho $diff->days; // 7\n?>
\n\n

Genau dieser Ansatz wird in den Best Practices für PHP 2025 empfohlen. Er ist unveränderlich (wenn das Objekt nicht direkt geändert wird) und intuitiv verständlich.

\n\n

Die unveränderliche Variante: DateTimeImmutable

\n\n

Wenn du an einem ernsthaften Projekt arbeitest, bei dem Vorhersagbarkeit wichtig ist, verwende DateTimeImmutable. Im Gegensatz zu DateTime ändern seine Methoden das ursprüngliche Objekt nicht, sondern geben ein neues zurück. Das verhindert versehentliche Zustandsänderungen.

\n\n
<?php\n$date = new DateTimeImmutable('2025-04-10');\n$newDate = $date->modify('+1 month');\necho $date->format('Y-m-d');    // 2025-04-10 (unverändert)\necho $newDate->format('Y-m-d'); // 2025-05-10\n?>
\n\n

Im Jahr 2025 gilt das als guter Stil – verwende DateTimeImmutable wo immer möglich.

\n\n

Zeitzonen: Einrichtung und Konvertierung

\n\n

Ein Fehler mit der Zeitzone ist eines der häufigsten Probleme. Stell dir vor: Der Server steht in den USA, der Benutzer in Deutschland, und du zeigst die Greenwich-Zeit an. Ein klassischer Fehlschlag.

\n\n

Um das zu vermeiden, gib die Zeitzone immer explizit an. Der zuverlässigste Weg ist, sie am Anfang des Skripts mit date_default_timezone_set() zu setzen:

\n

Blogs

Buchempfehlungen