International PHP Conference Berlin 2023

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 vous voulez éviter cela, vous devrez 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 {
/* Constants héritées */
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::ISO8601_EXPANDED = "X-m-d\TH:i:sP";
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";
/* Méthodes */
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 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
}

Historique

Version Description
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