La classe DateTime

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

Introduction

Représentation de la date et du temps.

Cette classe se comporte comme DateTimeImmutable, à l'exception que les objets se modifient eux-mêmes quand une méthode de modification telle que DateTime::modify() est appelée.

Avertissement

L'appel de méthodes sur des objets de la classe DateTime modifiera les informations encapsulées dans ces objets, si l'on veut éviter cela, on devra utiliser l'opérateur clone pour créer un nouvel objet. L'utilisation de DateTimeImmutable au lieu de DateTime est recommandée pour obtenir ce comportement par défaut.

Synopsis de la classe

class DateTime 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)
public function add(DateInterval $interval): DateTime
public static function createFromFormat(string $format, string $datetime, ?DateTimeZone $timezone = null): DateTime|false
public static function createFromImmutable(DateTimeImmutable $object): static
public static function createFromInterface(DateTimeInterface $object): DateTime
public function modify(string $modifier): DateTime
public static function __set_state(array $array): DateTime
public function setDate(int $year, int $month, int $day): DateTime
public function setISODate(int $year, int $week, int $dayOfWeek = 1): DateTime
public function setTime(
    int $hour,
    int $minute,
    int $second = 0,
    int $microsecond = 0
): DateTime
public function setTimestamp(int $timestamp): DateTime
public function setTimezone(DateTimeZone $timezone): DateTime
public function sub(DateInterval $interval): DateTime
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.2.0 Les constantes de classe de DateTime sont maintenant définies sur DateTimeInterface.
7.1.0 Le constructeur de DateTime 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