The DateTimeInterface interface DateTimeInterface
&reftitle.intro; DateTimeInterface was created so that parameter, return, or property type declarations may accept either DateTimeImmutable or DateTime as a value. It is not possible to implement this interface with userland classes. Common constants that allow for formatting DateTimeImmutable or DateTime objects through DateTimeImmutable::format and DateTime::format are also defined on this interface.
&reftitle.interfacesynopsis; DateTimeInterface &Constants; 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" &Methods;
&reftitle.constants; DateTimeInterface::ATOM string DATE_ATOM Atom (example: 2005-08-15T15:52:01+00:00); compatible with ISO-8601, RFC 3339, and XML Schema DateTimeInterface::COOKIE string DATE_COOKIE HTTP Cookies (example: Monday, 15-Aug-2005 15:52:01 UTC) DateTimeInterface::ISO8601 string DATE_ISO8601 ISO-8601-like (example: 2005-08-15T15:52:01+0000) This format is not compatible with ISO-8601, but is left this way for backward compatibility reasons. Use DateTimeInterface::ISO8601_EXPANDED, DateTimeInterface::ATOM for compatibility with ISO-8601 instead. (ref ISO8601:2004 section 4.3.3 clause d) DateTimeInterface::ISO8601_EXPANDED string DATE_ISO8601_EXPANDED ISO-8601 Expanded (example: +10191-07-26T08:59:52+01:00) This format allows for year ranges outside of ISO-8601's normal range of 0000-9999 by always including a sign character. It also ensures that the timezone part (+01:00) is compatible with ISO-8601. DateTimeInterface::RFC822 string DATE_RFC822 RFC 822 (example: Mon, 15 Aug 05 15:52:01 +0000) DateTimeInterface::RFC850 string DATE_RFC850 RFC 850 (example: Monday, 15-Aug-05 15:52:01 UTC) DateTimeInterface::RFC1036 string DATE_RFC1036 RFC 1036 (example: Mon, 15 Aug 05 15:52:01 +0000) DateTimeInterface::RFC1123 string DATE_RFC1123 RFC 1123 (example: Mon, 15 Aug 2005 15:52:01 +0000) DateTimeInterface::RFC7231 string DATE_RFC7231 RFC 7231 (since PHP 7.0.19 and 7.1.5) (example: Sat, 30 Apr 2016 17:52:13 GMT) DateTimeInterface::RFC2822 string DATE_RFC2822 RFC 2822 (example: Mon, 15 Aug 2005 15:52:01 +0000) DateTimeInterface::RFC3339 string DATE_RFC3339 Same as DATE_ATOM DateTimeInterface::RFC3339_EXTENDED string DATE_RFC3339_EXTENDED RFC 3339 EXTENDED format (example: 2005-08-15T15:52:01.000+00:00) DateTimeInterface::RSS string DATE_RSS RSS (example: Mon, 15 Aug 2005 15:52:01 +0000) DateTimeInterface::W3C string DATE_W3C World Wide Web Consortium (example: 2005-08-15T15:52:01+00:00)
&reftitle.changelog; &Version; &Description; 8.4.0 The class constants are now typed. 8.2.0 The constant DateTimeInterface::ISO8601_EXPANDED was added. 7.2.0 The class constants of DateTime are now defined on DateTimeInterface.
&reference.datetime.entities.datetimeinterface;