La clase DateTime

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

Introducción

Representación de la fecha y la hora.

Esta clase se comporta igual que DateTimeImmutable, excepto que los objetos se modifican cuando se llaman métodos de modificación como DateTime::modify().

Advertencia

Llamando metodos en objetos de la clase DateTime cambiará la información encapsulada en ese objeto, si deseas prevenir eso tendrás que usar el operador clone para crear un nuevo objeto. Usa DateTimeImmutable en lugar de DateTime para obtener este comportamiento recomendado por defecto.

Sinopsis de la Clase

class DateTime implements DateTimeInterface {
/* Constantes heredadas */
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étodos */
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
}

Historial de cambios

Versión Descripción
8.4.0 Las constantes de clase ahora están tipadas.
7.2.0 Las constantes de clase de DateTime ahora están definidas en DateTimeInterface.
7.1.0 El constructor de DateTime ahora incluye los microsegundos actuales en el valor construido. Antes de esto, siempre inicializaría los microsegundos a 0.

Tabla de contenidos

add a note

User Contributed Notes

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