Tag |
--- |
--- |
d und j |
Tag des Monats; zwei Ziffern mit oder ohne vorangestellter Null |
01 bis 31 oder
1 bis 31 (2-stellige Zahlen,
die höher sind als die Anzahl der Tage im Monat, werden akzeptiert,
führen aber zu einem Überlauf des Monats. Zum Beispiel bedeutet die
33 bei Januar den 2. Februar)
|
D und l |
Textuelle Darstellung eines Tages |
Mon bis Sun oder
Sonntag bis Samstag . Wenn der
angegebene Tagesname vom ausgewerteten (oder voreingestellten)
Datum abweicht, kommt es zu einem Überlauf bis zum
nächsten Datum mit dem angegebenen Tagesnamen.
Siehe die Beispiele unten für eine Erklärung.
|
S |
Englisches Ordnungssuffix für einen Tag des Monats; zwei Buchstaben.
Es wird bei der Auswertung ignoriert.
|
st , nd , rd
oder th .
|
z |
Tag des Jahres (beginnend bei 0); es muss ein Y
oder y vorangestellt werden.
|
0 bis 365 (es können auch
dreistellige Zahlen angegeben werden, die größer sind als die
Anzahl der Tage in einem Jahr; in diesem Fall wird die Differenz
auf das nächste Jahr übertragen. Zum Beispiel bedeutet 366 in
Verbindung mit 2022 den 2. Januar 2023)
|
Monat |
--- |
--- |
F und M |
Textuelle Darstellung eines Monats, z. B. January oder Sept |
January bis December oder
Jan bis Dec
|
m und n |
Numerische Darstellung eines Monats; mit oder ohne vorangestellter Null
|
01 bis 12 oder
1 bis 12 (es können auch
zweistellige Zahlen größer als 12 angegeben werden; in diesem Fall
wird die Differenz auf das nächste Jahr übertragen. Zum Beispiel
bedeutet 13 den Januar des nächsten Jahres)
|
Jahr |
--- |
--- |
X und x |
Vollständige numerische Darstellung einer Jahreszahl; bis zu 19
Ziffern, optional mit vorangestelltem + oder
-
|
Beispiele: 0055 , 787 ,
1999 , -2003 ,
+10191
|
Y |
Vollständige numerische Darstellung einer Jahreszahl; bis zu vier Ziffern
|
Beispiele: 0055 , 787 ,
1999 , 2003
|
y |
Eine zweistellige Jahreszahl (für den Bereich 1970-2069).
|
Beispiele: 99 oder 03
(werden interpretiert als 1999 bzw.
2003 )
|
Zeit |
--- |
--- |
a und A |
Ante meridiem (vor Mittag) und post meridiem (nach Mittag) |
am oder pm |
g und h |
Stunde im 12-Stunden-Format; mit oder ohne vorangestellter Null |
1 bis 12 oder
01 bis 12 (es können auch
zweistellige Zahlen größer als 12 angegeben werden; in diesem Fall
wird die Differenz auf den nächsten Tag übertragen.
14 bedeutet zum Beispiel 02
im nächsten AM/PM-Zeitraum)
|
G und H |
Stunde im 24-Stunden-Format; mit oder ohne vorangestellter Null |
0 bis 23 oder
00 bis 23 (es können auch
zweistellige Zahlen größer als 24 angegeben werden; in diesem Fall
wird die Differenz auf den nächsten Tag übertragen.
26 bedeutet zum Beispiel
02:00 am nächsten Tag)
|
i |
Minuten; mit vorangestellter Null |
00 to 59 (es können auch
zweistellige Zahlen größer als 59 angegeben werden; in diesem Fall
wird die Differenz auf die nächste Stunde übertragen.
66 bedeutet zum Beispiel
:06 in der nächsten Stunde)
|
s |
Sekunden; mit vorangestellter Null |
00 bis 59 (es können auch
zweistellige Zahlen größer als 59 angegeben werden; in diesem Fall
wird die Differenz auf den nächsten Tag übertragen.
90 bedeutet zum Beispiel
:30 in der nächsten Minute)
|
v |
Bruchteil in Millisekunden (bis zu drei Ziffern) |
Beispiel: 12 (0.12 Sekunden),
345 (0.345 Sekunden)
|
u |
Bruchteil in Mikrosekunden (bis zu sechs Ziffern) |
Beispiel: 45 (0.45 Sekunden),
654321 (0.654321 Sekunden)
|
Zeitzone |
--- |
--- |
e , O , p ,
P und T
|
Bezeichner der Zeitzone, Differenz zu UTC (in Stunden), Differenz
zu UTC (mit Doppelpunkt zwischen Stunden und Minuten) oder
Zeitzonenkürzel
|
Beispiele: UTC , GMT ,
Atlantic/Azores ,
+0200 , +02:00 ,
EST , MDT
|
Datum und Uhrzeit in voller Länge |
--- |
--- |
U |
Sekunden seit der Unix-Epoche (1. Januar 1970 00:00:00 GMT) |
Beispiel: 1292177455 |
Whitespace und Trennzeichen |
--- |
--- |
(Leerraum) |
Leerzeichen, Tabulatoren, oder NBSP (U+A0)- oder NNBSP (U+202F)-Zeichen
|
Beispiele: "\t" , " " |
# |
Eins der folgenden Trennzeichen: ; ,
: , / , . ,
, , - , (
oder )
|
Beispiel: / |
; ,
: , / , . ,
, , - , (
oder )
|
Das angegebene Zeichen |
Beispiel: - |
? |
Ein beliebiges Byte |
Beispiel: ^ (es ist zu beachten, dass für
UTF-8-Zeichen möglicherweise mehr als ein ?
benötigt wird. In diesem Fall ist es wahrscheinlich besser,
* zu verwenden)
|
* |
Beliebige Bytes bis zum nächsten Trennzeichen oder zur nächsten Ziffer
|
Beispiel: * in Y-*-d
entspricht in Verbindung mit der Zeichenkette
2009-aWort-08 dem Wert
aWort
|
! |
Setzt alle Felder (Jahr, Monat, Tag, Stunde, Minute, Sekunde,
Bruchteil und Zeitzone) auf ihre Ausgangswerte zurück
(0 bei Stunde, Minute, Sekunde und Bruchteil;
1 bei Monat und Tag; 1970 bei
Jahr und UTC bei der Zeitzone)
|
Ohne ! werden alle Felder auf das aktuelle
Datum und die aktuelle Uhrzeit gesetzt.
|
| |
Setzt die Werte der noch nicht ausgewerteten Felder (Jahr, Monat,
Tag, Stunde, Minute, Sekunde, Zeitzone) auf ihre Ausgangswerte zurück
|
Y-m-d| setzt Jahr, Monat und Tag entsprechend
der Informationen aus der ausgewerteten Zeichenkette und setzt
Stunde, Minute und Sekunde auf 0
|
+ |
Wenn dieses Formatzeichen verwendet wird, führen nachfolgende
Daten in der Zeichenkette nicht zu einem Fehler, sondern zu einer
Warnung
|
Um zu überprüfen, ob nachfolgende Daten vorhanden waren, kann
DateTimeImmutable::getLastErrors() verwendet
werden.
|