PHP
日期和时间 | Date and Time

DateTime (class)

The DateTime class

介绍

(PHP 5 >= 5.2.0, PHP 7)

表示日期和时间。

课程简介

DateTime implements DateTimeInterface {

/* Constants */

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 RFC3339_EXTENDED = "Y-m-d\TH:i:s.vP" ;

const string RSS = "D, d M Y H:i:s O" ;

const string W3C = "Y-m-d\TH:i:sP" ;

/* Methods */

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 [, int $microseconds = 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 )

}

预定义的常量

DateTime::ATOMDATE_ATOMAtom(例如:2005-08-15T15:52:01 + 00:00)DateTime::COOKIEDATE_COOKIEHTTP Cookies(例如:2005年8月15日星期一15:52:01 UTC)DateTime::ISO8601DATE_ISO8601ISO-8601(例如:2005-08-15T15:52 :01 + 0000)

注意:此格式与ISO-8601不兼容,但出于向后兼容性的原因,这种方式仍然存在。改为使用DateTime::ATOMDATE_ATOM与ISO-8601兼容。

DateTime::RFC822DATE_RFC822RFC 822(例如:星期一,15 Aug 05 15:52:01 +0000)DateTime::RFC850DATE_RFC850RFC 850(例如:星期一,15-Aug-05 15:52:01 UTC)DateTime::RFC1036DATE_RFC1036RFC 1036(例如:星期一,15八月05 15:52 :01 +0000)DateTime::RFC1123DATE_RFC1123RFC 1123(例如:2005年8月15日星期一15:52:01 +0000)DateTime::RFC2822DATE_RFC2822RFC 2822(例如:2005年8月15日星期一15:52:01 +0000)DateTime::RFC3339DATE_RFC3339DATE_ATOM(自PHP 5.1.3起)DateTime::RFC3339_EXTENDEDDATE_RFC3339_EXTENDEDRFC 3339扩展格式(自PHP 7.0.0)(例如:2005-08-15T15:52:01.000 + 00:00),DateTime::RSSDATE_RSSRSS(例如:星期一,2005年8月15日15时52分01秒+0000)DateTime::W3CDATE_W3C万维网联盟(例如:2005-08-15T15:52:01 + 00:00)

更新日志

描述
7.0.0新增常量:DATE_RFC3339_EXTENDED和DateTime :: RFC3339_EXTENDED。
5.5.0该类现在实现DateTimeInterface。
5.4.24COOKIE常数被改为反映RFC 1036使用四位数年份而不是两位数字年份(RFC 850)作为以前的版本。
5.2.2DateTime对象与比较运算符的比较更改为按预期工作。以前,所有的DateTime对象都被认为是相等的(使用==)。

目录

  • DateTime :: add - 向DateTime对象添加天数,月数,年数,小时数,分钟数和秒数

  • DateTime :: __构造 - 返回新的DateTime对象

  • DateTime :: createFromFormat - 根据指定的格式分析时间字符串

  • DateTime :: getLastErrors - 返回警告和错误

  • DateTime :: modify - 更改时间戳

  • DateTime :: __ set_state - __set_state处理程序

  • DateTime :: setDate - 设置日期

  • DateTime :: setISODate - 设置ISO日期

  • DateTime :: setTime - 设置时间

  • DateTime :: setTimestamp - 根据Unix时间戳设置日期和时间

  • DateTime :: setTimezone - 设置DateTime对象的时区

  • DateTime :: sub - 从DateTime对象中减去天数,月数,年数,小时数,分钟数和秒数

← DateTime Arithmetic

DateTime::add →