The DateTimeImmutable class

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

简介

Representation of date and time.

This class behaves the same as DateTime except new objects are returned when modification methods such as DateTime::modify() are called.

类摘要

class DateTimeImmutable implements DateTimeInterface {
/* 继承的常量 */
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";
/* 方法 */
public function __construct(string $datetime = "now", ?DateTimeZone $timezone = null)
#[\NoDiscard]
public function add(DateInterval $interval): DateTimeImmutable
public static function createFromFormat(string $format, string $datetime, ?DateTimeZone $timezone = null): DateTimeImmutable|false
public static function createFromMutable(DateTime $object): static
public static function getLastErrors(): array|false
#[\NoDiscard]
public function modify(string $modifier): DateTimeImmutable
public static function __set_state(array $array): DateTimeImmutable
#[\NoDiscard]
public function setDate(int $year, int $month, int $day): DateTimeImmutable
#[\NoDiscard]
public function setISODate(int $year, int $week, int $dayOfWeek = 1): DateTimeImmutable
#[\NoDiscard]
public function setTime(
    int $hour,
    int $minute,
    int $second = 0,
    int $microsecond = 0
): DateTimeImmutable
#[\NoDiscard]
public function setTimestamp(int $timestamp): DateTimeImmutable
#[\NoDiscard]
public function setTimezone(DateTimeZone $timezone): DateTimeImmutable
#[\NoDiscard]
public function sub(DateInterval $interval): DateTimeImmutable
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
}

更新日志

版本 说明
8.4.0 The class constants are now typed.
7.1.0 The DateTimeImmutable constructor now includes the current microseconds in the constructed value. Before this, it would always initialise the microseconds to 0.

目录

添加备注

用户贡献的备注

此页面尚无用户贡献的备注。
To Top