日 |
--- |
--- |
d および j |
2桁の日付。先頭のゼロを含むものと含まないもの |
01 から 31 あるいは
1 から 31
(その月の日数分以上の2桁の数値も指定可能ですが、
その月はオーバーフローします。
たとえば January において 33 を指定した場合、
February 2nd という意味になります)
|
D および l |
曜日を表す文字列 |
Mon から Sun あるいは
Sunday から Saturday 。
指定された曜日が、パースされた(またはデフォルトの)日付と異なっていた場合、
指定された曜日の 次の
日にオーバーフローします。詳細は後に示すサンプルを参照ください。
|
S |
日付の後につける英語の接尾辞。二文字。処理中には無視されます。 |
st 、nd 、rd あるいは
th
|
z |
年始からの通算日数 (最初は 0)。
Y または y
の後に続けて置かなければいけません。
|
0 から 365
(1年の日数分以上の3桁の数値も指定可能ですが、
その年はオーバーフローします。
たとえば 2022年において 366
を指定した場合は、
January 2nd, 2023 という意味になります)
|
月 |
--- |
--- |
F および M |
月を表す文字列。January あるいは Sept など |
January から December あるいは
Jan から Dec
|
m および n |
月を表す数値。先頭のゼロを含むものと含まないもの |
01 から 12 あるいは
1 から 12
(12 以上の2桁の数値も指定可能ですが、
その年についてはオーバーフローします。
たとえば 13 の場合は、
翌年の1月という意味になります)
|
年 |
--- |
--- |
X および x |
年の数値表現。19桁まで指定可能。オプションで + や - を先頭に指定可能です。 |
例: 0055 , 787 ,
1999 , -2003 ,
+10191 |
Y |
4 桁以下の数値で表した年 |
例: 0055 , 787 ,
1999 , 2003 |
y |
2 桁の数値で表した年 (1970年から2069年の間だとみなされます)
|
例:
99 あるいは 03
(それぞれ、 1999 および
2003 と見なされます)
|
時刻 |
--- |
--- |
a および A |
午前および午後 |
am あるいは pm |
g および h |
12 時間制での時間。先頭のゼロを含むものと含まないもの |
1 から 12 あるいは
01 から 12
(12 以上の2桁の数値も指定可能ですが、
日の指定がオーバーフローします。
たとえば 14 の場合は、
次の午前/午後の 02 時という意味になります)
|
G および H |
24 時間制での時間。先頭のゼロを含むものと含まないもの |
0 から 23 、あるいは
00 から 23
(24 より大きな、2桁の値も指定可能ですが、
この場合、日の指定がオーバーフローします。
たとえば、26 は翌日の
02:00 という意味になります)
|
i |
分。先頭のゼロを含む |
00 から 59
(59 以上の2桁の数値も指定可能ですが、
次の1時間にオーバーフローします。
たとえば 66 の場合は、
次の1時間の :06 という意味になります)
|
s |
秒。先頭のゼロを含む |
00 から 59
(59 以上の2桁の数値も指定可能ですが、
次の分にオーバーフローします。
たとえば 90 の場合は、
次の分の :30 という意味になります)
|
v |
ミリ秒 (最大 3桁) |
例: 12 (0.12
秒という意味), 345 (0.345 秒という意味) |
u |
マイクロ秒 (最大 6 桁) |
例: 45 (0.45
秒という意味), 654321 (0.654321 秒という意味) |
タイムゾーン |
--- |
--- |
e 、O 、
P および T
|
タイムゾーン識別子、UTC からの時差 (時間単位)、
UTC からの時差 (コロン区切りでの時間と分)、そしてタイムゾーンの短縮形 |
例: UTC 、GMT 、
Atlantic/Azores 、
+0200 、+02:00 、
EST 、MDT
|
完全な日付/時刻 |
--- |
--- |
U |
Unix エポック (January 1 1970 00:00:00 GMT) からの経過秒数 |
例: 1292177455 |
空白および区切り |
--- |
--- |
(空白) |
ゼロ文字以上のスペース、タブ、NBSP(U+A0)、NNBSP(U+202F) |
例: "\t" , " " |
# |
次の区切り文字のいずれか: ; ,
: , / , . ,
, , - , ( ,
)
|
例: / |
; ,
: , / , . ,
, , - , ( ,
)
|
指定した文字 |
例: - |
? |
ランダムなバイト |
例: ^ (UTF-8 文字の場合は複数の
? が必要になるでしょう。この場合、おそらく
* を使うと要望が満たせるはずです) |
* |
次の区切り文字あるいは数字までのランダムなバイト列 |
例: Y-*-d の中の *
は、文字列 2009-aWord-08 の中の
aWord にマッチします |
! |
すべてのフィールド
(年、月、日、時、分、秒、マイクロ秒およびタイムゾーン情報)
を ゼロ相当の値
(時、分、秒、マイクロ秒については 0 。
月、日については 1 。
年については 1970 。
タイムゾーンについては UTC )
にリセットします。
|
! がなければ、すべてのフィールドは現在の日時に設定されます。 |
| |
まだパースされていないすべてのフィールド (年、月、日、時、分、秒、マイクロ秒およびタイムゾーン情報)
を ゼロ相当の値にリセットします。 |
Y-m-d| は、文字列をパースした結果から年月日を設定し
時分秒には 0 を設定します。 |
+ |
この文字があると、文字列のそれ以降のデータではエラーが発生せず、
かわりに警告を発生させる |
それ以降のデータが存在したかどうかを調べるには DateTime::getLastErrors()
を使います。 |