La classe DateTimeImmutable

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

Introduction

Représentation d'une date et heure.

Cette classe se comporte de manière identique à DateTime à l'exception que de nouveaux objets sont retournés quand des méthodes de modification telle que DateTime::modify() sont appelées.

Synopsis de la classe

class DateTimeImmutable implements DateTimeInterface {
/* Constantes héritées */
public const string DateTimeInterface::ATOM = "Y-m-d\\TH:i:sP";
public const string DateTimeInterface::COOKIE = "l, d-M-Y H:i:s T";
public const string DateTimeInterface::ISO8601 = "Y-m-d\\TH:i:sO";
public const string DateTimeInterface::ISO8601_EXPANDED = "X-m-d\\TH:i:sP";
public const string DateTimeInterface::RFC822 = "D, d M y H:i:s O";
public const string DateTimeInterface::RFC850 = "l, d-M-y H:i:s T";
public const string DateTimeInterface::RFC1036 = "D, d M y H:i:s O";
public const string DateTimeInterface::RFC1123 = "D, d M Y H:i:s O";
public const string DateTimeInterface::RFC7231 = "D, d M Y H:i:s \\G\\M\\T";
public const string DateTimeInterface::RFC2822 = "D, d M Y H:i:s O";
public const string DateTimeInterface::RFC3339 = "Y-m-d\\TH:i:sP";
public const string DateTimeInterface::RFC3339_EXTENDED = "Y-m-d\\TH:i:s.vP";
public const string DateTimeInterface::RSS = "D, d M Y H:i:s O";
public const string DateTimeInterface::W3C = "Y-m-d\\TH:i:sP";
/* Méthodes */
public function __construct(string $datetime = "now", ?DateTimeZone $timezone = null)
#[\NoDiscard]
public function add(DateInterval $interval): DateTimeImmutable
public static function createFromFormat(string $format, string $datetime, ?DateTimeZone $timezone = null): DateTimeImmutable|false
public static function createFromMutable(DateTime $object): static
public static function getLastErrors(): array|false
#[\NoDiscard]
public function modify(string $modifier): DateTimeImmutable
public static function __set_state(array $array): DateTimeImmutable
#[\NoDiscard]
public function setDate(int $year, int $month, int $day): DateTimeImmutable
#[\NoDiscard]
public function setISODate(int $year, int $week, int $dayOfWeek = 1): DateTimeImmutable
#[\NoDiscard]
public function setTime(
    int $hour,
    int $minute,
    int $second = 0,
    int $microsecond = 0
): DateTimeImmutable
#[\NoDiscard]
public function setTimestamp(int $timestamp): DateTimeImmutable
#[\NoDiscard]
public function sub(DateInterval $interval): DateTimeImmutable
public function diff(DateTimeInterface $targetObject, bool $absolute = false): DateInterval
public function format(string $format): string
public function getOffset(): int
public function getTimestamp(): int
public function getTimezone(): DateTimeZone|false
public function __serialize(): array
public function __unserialize(array $data): void
#[\Deprecated]
public function __wakeup(): void
}

Historique

Version Description
8.4.0 Les constantes de classe sont maintenant typées.
7.1.0 Le constructeur DateTimeImmutable inclut désormais les microsecondes actuelles dans la valeur construite. Avant cela, il initialisait toujours les microsecondes à 0.

Sommaire

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top