it says the default parameter is 'now'.
but it also uses 'now' when you enter an empty string like '' despite it being a valid datetime format, expected an exception.
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
DateTime::__construct — 新しい DateTime オブジェクトを返す
DateTimeImmutable::__construct() と似ていますが、 DateTime を用いて動作します。 DateTimeImmutable を代わりに使うことを検討して下さい。
新しい DateTime オブジェクトを返します。
datetime
日付/時刻 文字列。有効な書式については 日付と時刻の書式 で説明しています。
ここに "now"
を指定して
$timezone
パラメータを使うと、現在時刻を取得できます。
timezone
$datetime
のタイムゾーンを表す
DateTimeZone オブジェクト。
$timezone
を省略した場合、または null
の場合、
現在のタイムゾーンを使います。
注意:
$datetime
パラメータが UNIX タイムスタンプ (@946684800
など) であったりタイムゾーンつきで指定した場合 (2010-01-28T15:00:00+02:00
など) は、$timezone
パラメータや現在のタイムゾーンは無視されます。
新しい DateTime のインスタンスを返します。
無効な日付/時刻の文字列が渡された場合、 DateMalformedStringException がスローされます。 PHP 8.3 より前のバージョンでは、 Exception がスローされていました。