Die Klasse DateTime

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

Einführung

Stellt Datum und Uhrzeit dar.

Diese Klasse verhält sich wie die Klasse DateTimeImmutable, außer dass die Objekte selbst verändert werden, wenn Modifizierungsmethoden wie DateTime::modify() aufgerufen werden.

Warnung

Der Aufruf von Methoden auf Objekten der Klasse DateTime verändert die in diesen Objekten gekapselten Informationen. Wenn das verhindert werden soll, muss der Operator clone verwendet werden, um ein neues Objekt zu erzeugen. Um dieses empfohlene Verhalten standardmäßig zu erhalten, sollte DateTimeImmutable anstelle von DateTime verwendet werden.

Klassenbeschreibung

class DateTime implements DateTimeInterface {
/* Geerbte Konstanten */
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";
/* Methoden */
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
}

Changelog

Version Beschreibung
8.4.0 Die Klassenkonstanten sind nun typisiert.
7.2.0 Die Klassenkonstanten von DateTime sind nun in DateTimeInterface definiert.
7.1.0 Der Konstruktor von DateTime bezieht nun die aktuellen Mikrosekunden in den erzeugten Wert ein. Vorher wurden die Mikrosekunden immer mit 0 initialisiert.

Inhaltsverzeichnis