Fecha/Hora
PHP Manual

La clase DateTime

(PHP 5 >= 5.2.0, PHP 7)

Introducción

Representación de la fecha y la hora.

Sinopsis de la Clase

DateTime implements DateTimeInterface {
/* Constantes */
const string ATOM = "Y-m-d\TH:i:sP" ;
const string COOKIE = "l, d-M-Y H:i:s T" ;
const string ISO8601 = "Y-m-d\TH:i:sO" ;
const string RFC822 = "D, d M y H:i:s O" ;
const string RFC850 = "l, d-M-y H:i:s T" ;
const string RFC1036 = "D, d M y H:i:s O" ;
const string RFC1123 = "D, d M Y H:i:s O" ;
const string RFC2822 = "D, d M Y H:i:s O" ;
const string RFC3339 = "Y-m-d\TH:i:sP" ;
const string RSS = "D, d M Y H:i:s O" ;
const string W3C = "Y-m-d\TH:i:sP" ;
/* Métodos */
public __construct ([ string $time = "now" [, DateTimeZone $timezone = NULL ]] )
public DateTime add ( DateInterval $interval )
public static DateTime createFromFormat ( string $format , string $time [, DateTimeZone $timezone ] )
public static array getLastErrors ( void )
public DateTime modify ( string $modify )
public static DateTime __set_state ( array $array )
public DateTime setDate ( int $year , int $month , int $day )
public DateTime setISODate ( int $year , int $week [, int $day = 1 ] )
public DateTime setTime ( int $hour , int $minute [, int $second = 0 ] )
public DateTime setTimestamp ( int $unixtimestamp )
public DateTime setTimezone ( DateTimeZone $timezone )
public DateTime sub ( DateInterval $interval )
public DateInterval diff ( DateTimeInterface $datetime2 [, bool $absolute = false ] )
public string format ( string $format )
public int getOffset ( void )
public int getTimestamp ( void )
public DateTimeZone getTimezone ( void )
public __wakeup ( void )
}

Constantes predefinidas

DateTime::ATOM
DATE_ATOM
Atom (ejemplo: 2005-08-15T15:52:01+00:00)
DateTime::COOKIE
DATE_COOKIE
Cookies de HTTP (ejemplo: Monday, 15-Aug-2005 15:52:01 UTC)
DateTime::ISO8601
DATE_ISO8601
ISO-8601 (ejemplo: 2005-08-15T15:52:01+0000)

Nota: Este formato no es compatible con el ISO-8601, aunque se deja por razones de retrocompatibilidad. Use DateTime::ATOM o DATE_ATOM en su lugar para que sea compatible con el ISO-8601.

DateTime::RFC822
DATE_RFC822
RFC 822 (ejemplo: Mon, 15 Aug 05 15:52:01 +0000)
DateTime::RFC850
DATE_RFC850
RFC 850 (ejemplo: Monday, 15-Aug-05 15:52:01 UTC)
DateTime::RFC1036
DATE_RFC1036
RFC 1036 (ejemplo: Mon, 15 Aug 05 15:52:01 +0000)
DateTime::RFC1123
DATE_RFC1123
RFC 1123 (ejemplo: Mon, 15 Aug 2005 15:52:01 +0000)
DateTime::RFC2822
DATE_RFC2822
RFC 2822 (ejemplo: Mon, 15 Aug 2005 15:52:01 +0000)
DateTime::RFC3339
DATE_RFC3339
Lo mismo que DATE_ATOM (desde PHP 5.1.3)
DateTime::RSS
DATE_RSS
RSS (ejemplo: Mon, 15 Aug 2005 15:52:01 +0000)
DateTime::W3C
DATE_W3C
World Wide Web Consortium (ejemplo: 2005-08-15T15:52:01+00:00)

Historial de cambios

Versión Descripción
5.5.0 La clase ahora implementa DateTimeInterface.
5.4.24 La constante COOKIE se cambió para reflejar el RFC 1036 usando un año de cuatro dígitos en lugar de un año de dos dígitos (RFC 850) como en versiones anteriores.
5.2.2 La comparación de un objeto DateTime con los operadores de comparación se cambió para que funcionara correctamente. Anteriormente, todos los objetos DateTime eran considerados iguales (usando ==).

Tabla de contenidos


Fecha/Hora
PHP Manual