DateTime::__construct

Returns new DateTime object

Description

public DateTime::__construct(string $datetime = "now", DateTimeZonenull $timezone = null)

Like DateTimeImmutable::__construct but works with DateTime. Consider using the DateTimeImmutable and features instead.

Returns a new DateTime object.

Parameters

datetime

A date/time string. Valid formats are explained in Date and Time Formats.

Enter "now" here to obtain the current time when using the $timezone parameter.

timezone

A DateTimeZone object representing the timezone of $datetime.

If $timezone is omitted or null, the current timezone will be used.

Note:

The $timezone parameter and the current timezone are ignored when the $datetime parameter either is a UNIX timestamp (e.g. @946684800) or specifies a timezone (e.g. 2010-01-28T15:00:00+02:00).

Return Values

Returns a new DateTime instance.

Errors/Exceptions

If an invalid Date/Time string is passed, DateMalformedStringException is thrown. Previous to PHP 8.3, this was Exception.

Changelog

Version Description
8.3.0 Now throws DateMalformedStringException if an invalid string is passed, instead of Exception.

See Also

  • DateTimeImmutable::__construct