PHP Datum() Funktion ist eines der leistungsstärksten und am häufigsten verwendeten Tools für die Datums- und Zeitformatierung in Webanwendungen. Egal, ob Sie einen Blog, eine E-Commerce-Plattform oder ein Dashboard erstellen, die benutzerfreundliche Anzeige von Datumsangaben ist unerlässlich. In diesem umfassenden Leitfaden,
tauchen wir tief in die Datum() Funktion, ihre Syntax, Formatspezifikationen, Beispiele aus der Praxis, bewährte Verfahren und häufige Fallstricke.
Was ist die PHP Date() Funktion?
Der Datum() in PHP formatiert ein lokales Datum und eine lokale Uhrzeit gemäß einem angegebenen Formatstring. Sie gibt eine Zeichenkette zurück, die das formatierte Datum/die formatierte Uhrzeit darstellt.
Grundlegende Syntax
php
string date(string $format, ?int $timestamp = null)
$format: Eine Zeichenkette mit Formatangaben (z.B.,Y,M,d).1TP4Zeitstempel: Optionaler Unix-Zeitstempel. Wird er weggelassen, wird die aktuelle Zeit verwendet.
Hinweis: Ab PHP 8.0+ ist der zweite Parameter nullbar (?int).
Wichtige PHP-Datumsformatangaben
Im Folgenden finden Sie eine Übersicht über die am häufigsten verwendeten Formatzeichen:
| Anforderer | Beschreibung | Beispiel Ausgabe |
Y | 4-stelliges Jahr | 2026 |
y | 2-stelliges Jahr | 25 |
M | Monat (01-12) | 11 |
n | Monat ohne führende Nullen (1-12) | 11 |
F | Vollständiger Monatsname | November |
M | Kurzer Monatsname (3 Buchstaben) | Nov. |
d | Tag des Monats mit führenden Nullen | 17 |
j | Tag ohne führende Nullen | 17 |
l | Vollständiger Name des Wochentags | Montag |
D | Kurzer Wochentag (3 Buchstaben) | Mo |
H | 24-Stunden-Format (00-23) | 11 |
h | 12-Stunden-Format (01-12) | 11 |
i | Minuten mit führenden Nullen | 37 |
S | Sekunden mit führenden Nullen | 45 |
A | Großbuchstaben AM/PM | AM |
a | Kleinbuchstaben am/pm | am |
T | Abkürzung der Zeitzone | IST |
c | ISO 8601-Format | 2026-11-17T11:37:45+05:30 |
r | RFC 2822-Format | Mon, 17 Nov 2026 11:37:45 +0530 |
Grundlegende Beispiele für das PHP-Datumsformat
1. Aktuelles Datum und Uhrzeit
php
echo Datum(‘Y-m-d H:i:s’);
// Ausgabe: 2026-11-17 11:37:452. Von Menschen lesbares Format
php
echo Datum(‘l, F j, Y \a\t g:i A’);
// Ausgabe: Montag, 17. November 2026 um 11:37 UhrVerwenden Sie \ um Zeichen wie unter Sie erscheinen also wörtlich.
3. Kurzes Datum
php
echo date('d/m/Y');
// Ausgabe: 17/11/20264. Nur Zeit
php
echo date('h:i A');
// Ausgabe: 11:37 AMArbeiten mit Zeitstempeln
Sie können jeden Unix-Zeitstempel formatieren:
php
$imestamp = strtotime('2026-01-01 00:00:00');
echo date('Y-m-d', $timestamp);
// Ausgabe: 2026-01-01Kombinieren Sie mit strtotime()
php
echo date('F j, Y', strtotime('+7 Tage'));
// Ausgabe: 24. November 2026Handhabung von Zeitzonen (kritisch!)
Standardmäßig, Datum() verwendet die Standardzeitzone des Servers. Stellen Sie sie immer explizit ein:
php
date_default_timezone_set('Asien/Kolkata'); // IST
echo date('Y-m-d H:i:s T');
// Ausgabe: 2026-11-17 11:37:45 ISTBeste Praxis: Legen Sie die Zeitzone oben in Ihrer Konfigurationsdatei oder am Einstiegspunkt fest.
Praktische Anwendungsfälle für das PHP-Datumsformat
1. die Termine der Blogbeiträge
php
$post_date = '2026-11-10 14:30:00';
echo date('M j, Y', strtotime($post_date));
// Ausgabe: Nov 10, 20262. Relative Zeit (“vor 2 Stunden”)
php
function timeAgo($timestamp) {
$diff = time() - $timestamp;
if ($diff < 60) return "vor $diff Sekunden";
if ($diff < 3600) return round($diff/60) . " Minuten vor";
if ($diff < 86400) return round($diff/3600) . " Stunden vor";
return date('M j', $timestamp);
}
echo timeAgo(strtotime('2026-11-17 09:00:00'));
// Ausgabe: vor 2 Stunden3. Ereignis-Countdown
php
1TP4Ereignis = strtotime('2026-12-25 00:00:00');
$now = time();
$days_left = floor(($event - $now) / 86400);
echo "Weihnachten ist in $days_left Tagen!";
// Ausgabe: In 38 Tagen ist Weihnachten!Häufige Fallstricke und wie man sie vermeidet
| Ausgabe | Lösung |
| Falsche Zeitzone | Verwenden Sie immer date_default_timezone_set() |
Jahr-2000-ähnliche Fehler mit y | Bevorzugt Y für das gesamte Jahr |
| Verwirrung durch führende Nullen | Verwenden Sie j anstatt d wenn Sie keine Nullen wollen |
| Lokale Probleme | Verwenden Sie setlocale() + strftime() für lokalisierte Namen |
| In Zukunft veraltet? | Nein! Aber bedenken Sie DateTime für komplexe Operationen |
Profi-Tipps
1. Verwenden Sie DateTime für fortgeschrittene Bedürfnisse
2. php
$dt = new DateTime('now', new DateTimeZone('Asia/Kolkata'));
3. echo $dt->format('J-m-d H:i:s');
4. Cache Formatierte Daten
Vermeiden Sie Anrufe Datum() in Schleifen für die Leistung.
5. Eingabezeitstempel validieren
6. php
if ($timestamp === false) {
$imestamp = time();
7. }
8. Internationalisierung
9. php
setlocale(LC_TIME, 'hi_IN');
10. echo strftime('%e %B %Y'); // Hindi-Datum
Bonus: Einzeilige Datumsformate
php// ISODatum('c');
// US-FormatDatum('m/d/Y h:i A');
// EU-Formatdate('d.m.Y H:i');
Abschluss
Mastering Datum() geht es um das Verständnis seiner Formatbezeichner, Umgang mit Zeitzonen, Und Integration mit strtotime(). Während DateTime bietet mehr Leistung für komplexe Szenarien, Datum() bleibt leicht, schnell und perfekt für 90% Anwendungsfälle. Carmatec, ein führender PHP-Entwicklungsunternehmen, nutzt, um saubere, effiziente und zuverlässige zeitbasierte Funktionen bereitzustellen.