Overview
KB
Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Development
Learn PHP
 
<DateTime::addDateTime::createFromFormat>
^DateTimeLast updated: Mon, 26 Oct 2026

DateTime::__construct

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

DateTime::__construct — Returns new DateTime object

Description

public function DateTime::__construct(string $datetime = "now", ?DateTimeZone $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


<DateTime::addDateTime::createFromFormat>
^DateTimeLast updated: Mon, 26 Oct 2026