The DateTime class

From Get docs

The DateTime class


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

This class behaves the same as DateTimeImmutable except objects are modified itself when modification methods such as DateTime::modify() are called.

Class synopsis

class DateTime implements DateTimeInterface {

/* Inherited constants */

const string DateTimeInterface::ATOM = "Y-m-d\TH:i:sP";

const string DateTimeInterface::COOKIE = "l, d-M-Y H:i:s T";

const string DateTimeInterface::ISO8601 = "Y-m-d\TH:i:sO";

const string DateTimeInterface::RFC822 = "D, d M y H:i:s O";

const string DateTimeInterface::RFC850 = "l, d-M-y H:i:s T";

const string DateTimeInterface::RFC1036 = "D, d M y H:i:s O";

const string DateTimeInterface::RFC1123 = "D, d M Y H:i:s O";

const string DateTimeInterface::RFC7231 = "D, d M Y H:i:s \G\M\T";

const string DateTimeInterface::RFC2822 = "D, d M Y H:i:s O";

const string DateTimeInterface::RFC3339 = "Y-m-d\TH:i:sP";

const string DateTimeInterface::RFC3339_EXTENDED = "Y-m-d\TH:i:s.vP";

const string DateTimeInterface::RSS = "D, d M Y H:i:s O";

const string DateTimeInterface::W3C = "Y-m-d\TH:i:sP";

/* Methods */

public __construct(string $datetime = "now", ?DateTimeZone $timezone = null)

public add(DateInterval $interval): DateTime
public static createFromFormat(string $format, string $datetime, ?DateTimeZone $timezone = null): DateTime|false
public static createFromImmutable(DateTimeImmutable $object): DateTime
public static createFromInterface(DateTimeInterface $object): DateTime
public static getLastErrors(): array|false
public modify(string $modifier): DateTime|false
public static __set_state(array $array): DateTime
public setDate(int $year, int $month, int $day): DateTime
public setISODate(int $year, int $week, int $dayOfWeek = 1): DateTime
public setTime(
 int $hour,
 int $minute,
 int $second = 0,
 int $microsecond = 0
): DateTime
public setTimestamp(int $timestamp): DateTime
public setTimezone(DateTimeZone $timezone): DateTime
public sub(DateInterval $interval): DateTime
public diff(DateTimeInterface $targetObject, bool $absolute = false): DateInterval
public format(string $format): string
public getOffset(): int
public getTimestamp(): int
public getTimezone(): DateTimeZone|false
public __wakeup(): void



Version Description
7.2.0 The class constants of DateTime are now defined on DateTimeInterface.

Table of Contents

© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.