Hilfe:Vorlagenprogrammierung/Parserfunktionen/Datum und Zeit

Datum- und Zeitfunktionen liefern Werte für Anzeige und einfache Vergleiche im Wikitext. Wichtig: Viele dieser Werte sind cache-abhängig und ändern sich nicht zwingend sofort auf einer bereits gespeicherten Seite.


Cache und Aktualisierung Bearbeiten

Viele Zeitwerte werden beim Rendern der Seite berechnet und anschließend aus dem Cache ausgeliefert. Das bedeutet: Eine Seite kann auch nach Mitternacht noch „gestern“ anzeigen, bis sie neu gerendert wird. Aus diesem Grund sind Zeitfunktionen innerhalb des Parsers lediglich für Formatierungen und einfachere Funktionen geeignet. Zielgerichtete Überprüfungen sind nur mit live ausgeführten Methoden, wie JavaScript oder Erweiterungen in PHP möglich.

#time – Datum und Zeit formatieren Bearbeiten

Die Parserfunktion formatiert einen Zeitpunkt nach einem Formatstring und gibt den formatierten Text zurück.

Funktion Parameter Optionale Parameter
#time Format Zeitpunkt Sprache / Zeitzone

Funktionsweise Bearbeiten

#time formatiert einen Zeitpunkt anhand eines Formatstrings. Wird kein Zeitpunkt angegeben, wird die aktuelle Serverzeit verwendet.


Beispiele Bearbeiten

{{#time: Y-m-d }}

Gibt das aktuelle Datum im Format YYYY-MM-DD aus (Serverzeit).

{{#time: d.m.Y | 2026-01-04 }}

Formatiert einen expliziten Zeitpunkt.

{{#time: H:i | now }}

Formatiert „jetzt“ (Serverzeit).

Format-Parameter Bearbeiten

Die hier aufgelisteten Parameter dienen zur Angabe des Formats für die Funktionen #time und #timel

Format Ausgabe (Beispiel) Erklärung
Y 2026 Jahr, vierstellig
y 26 Jahr, zweistellig
m 01 Monat mit führender Null
n 1 Monat ohne führende Null
F Januar Monatsname ausgeschrieben (lokalisiert)
M Jan Monatsname abgekürzt (lokalisiert)
d 04 Tag des Monats mit führender Null
j 4 Tag des Monats ohne führende Null
H 19 Stunde (00–23)
i 07 Minute (00–59)
s 30 Sekunde (00–59)
W 01 Kalenderwoche (ISO-8601)
N 1 Wochentag als Zahl (1=Montag, 7=Sonntag)
w 0 Wochentag als Zahl (0=Sonntag, 6=Samstag)
z 3 Tag des Jahres (0–365)
t 31 Anzahl der Tage im aktuellen Monat
c 2026-01-04T19:07:30+01:00 ISO-8601 Datum/Zeit
U 1704397650 Unix-Timestamp
 
Info:Hinweis: Zeichen, die kein Formatparameter sind (z. B. -, :, .), werden unverändert ausgegeben. Einzelne Zeichen können mit \ maskiert werden, um sie als Literal zu erzwingen.


#timel – Lokale Zeit formatieren Bearbeiten

#timel entspricht funktional #time, bezieht sich jedoch auf die lokale Zeitzone (statt reiner Serverzeit).

Funktion Parameter Optionale Parameter
#timel Format Zeitpunkt Sprache / Zeitzone

Funktionsweise Bearbeiten

#timel arbeitet wie #time, verwendet jedoch die lokale Zeitzone. Es werden die gleichen Format-Parameter genutzt. Das ist insbesondere dann relevant, wenn Serverzeit und Projekt-/Benutzerzeit voneinander abweichen.


Beispiele Bearbeiten

{{#timel: Y-m-d H:i }}

Gibt Datum und Uhrzeit in lokaler Zeitzone aus.

Typische Fehler und Besonderheiten Bearbeiten

Auch hier gilt: Zeitwerte können cache-abhängig sein.

Magische Wörter: CURRENT (Serverzeit) Bearbeiten

Magisches Wort Ausgabe (Beispiel) Erklärung
{{CURRENTYEAR}} 2026 Aktuelles Jahr (Serverzeit)
{{CURRENTMONTH}} 01 Monat als Zahl mit führender Null
{{CURRENTMONTHNAME}} Januar Monatsname (lokalisiert)
{{CURRENTDAY}} 4 Tag des Monats ohne führende Null
{{CURRENTDAY2}} 04 Tag des Monats mit führender Null
{{CURRENTHOUR}} 19 Stunde (00–23)
{{CURRENTMINUTE}} 07 Minute (00–59)
{{CURRENTTIME}} 1907 Uhrzeit als HHMM
{{CURRENTTIMESTAMP}} 20260104190730 Timestamp als YYYYMMDDHHMMSS (gut für Vergleiche)
{{CURRENTDAYNAME}} Montag Name des Wochentags (lokalisiert)
{{CURRENTDOW}} 1 Wochentag als Zahl (1=Montag, 7=Sonntag)
{{CURRENTWEEK}} 01 Kalenderwoche
{{CURRENTDAYOFYEAR}} 4 Tag des Jahres (1–366)
{{CURRENTMONTHABBREV}} Jan Monatsname abgekürzt (lokalisiert)
{{CURRENTMONTHNAMEGEN}} Januar Monatsname im Genitiv (sprachabhängig)
{{CURRENTSECOND}} 30 Sekunde (00–59)
{{CURRENTTZ}} CET Aktive Zeitzone (Server/Projekt)
 
Hinweis:CURRENT-Werte sind häufig cache-abhängig und aktualisieren sich nicht zwingend sofort auf bereits gespeicherten Seiten. → Siehe: Hilfe:Cache

Magische Wörter: LOCAL (Benutzer-/Projektzeit) Bearbeiten

Magisches Wort Ausgabe (Beispiel) Erklärung
{{LOCALYEAR}} 2026 Jahr in lokaler/benutzerspezifischer Zeitzone
{{LOCALMONTH}} 01 Monat als Zahl mit führender Null
{{LOCALMONTHNAME}} Januar Monatsname (lokalisiert)
{{LOCALDAY}} 4 Tag des Monats ohne führende Null
{{LOCALDAY2}} 04 Tag des Monats mit führender Null
{{LOCALHOUR}} 19 Stunde (00–23)
{{LOCALMINUTE}} 07 Minute (00–59)
{{LOCALTIME}} 1907 Uhrzeit als HHMM
{{LOCALTIMESTAMP}} 20260104190730 Timestamp als YYYYMMDDHHMMSS
{{LOCALDAYNAME}} Montag Name des Wochentags (lokalisiert)
{{LOCALDOW}} 1 Wochentag als Zahl (1=Montag, 7=Sonntag)
{{LOCALWEEK}} 01 Kalenderwoche (lokale Zeitzone)
{{LOCALDAYOFYEAR}} 4 Tag des Jahres (1–366)
{{LOCALMONTHABBREV}} Jan Monatsname abgekürzt (lokalisiert)
{{LOCALMONTHNAMEGEN}} Januar Monatsname im Genitiv (sprachabhängig)
{{LOCALSECOND}} 30 Sekunde (00–59)
{{LOCALTZ}} CET Aktive lokale Zeitzone
 
Hinweis:LOCAL-Werte sind häufig cache-abhängig und aktualisieren sich nicht zwingend sofort auf bereits gespeicherten Seiten. → Siehe: Hilfe:Cache

Abgrenzung und verbesserte Logik Bearbeiten

Für komplexere Datumslogik, Berechnungen oder wiederverwendbare Formatierungen sind Module mit Lua Programmierung die bessere Wahl.

Es existiert bereits ein Modul, mit verbessertem Funktionsumfang, zum Beispiel für relative Zeitangaben. → Siehe: Modul:DateFormat

Siehe auch