The DateInterval class
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
Introduction
Represents a date interval.
A date interval stores either a fixed amount of time (in years, months, days, hours etc) or a relative time string in the format that DateTimeImmutable's and DateTime's constructors support.
More specifically, the information in an object of the DateInterval class is an instruction to get from one date/time to another date/time. This process is not always reversible.
A common way to create a DateInterval object is by calculating the difference between two date/time objects through DateTimeInterface::diff().
Since there is no well defined way to compare date intervals, DateInterval instances are incomparable.
Class synopsis
Properties
- y
-
Number of years.
- m
-
Number of months.
- d
-
Number of days.
- h
-
Number of hours.
- i
-
Number of minutes.
- s
-
Number of seconds.
- f
-
Number of microseconds, as a fraction of a second.
- invert
-
Is
1
if the interval represents a negative time period and0
otherwise. See DateInterval::format(). - days
-
If the DateInterval object was created by DateTimeImmutable::diff() or DateTime::diff(), then this is the total number of days between the start and end dates. Otherwise, days will be
false
. - from_string
-
If the DateInterval object was created by DateInterval::createFromDateString(), then this property's value will be
true
, and the date_string property will be populated. Otherwise, the value will befalse
, and the y to f, invert, and days properties will be populated. - date_string
-
The string used as argument to DateInterval::createFromDateString().
Changelog
Version | Description |
---|---|
8.2.0 | The from_string and date_string properties were added for DateInterval instances that were created using the DateInterval::createFromDateString() method. |
7.4.0 | DateInterval instances are incomparable now; previously, all DateInterval instances were considered equal. |
7.1.0 | The f property was added. |
Table of Contents
- DateInterval::__construct — Creates a new DateInterval object
- DateInterval::createFromDateString — Sets up a DateInterval from the relative parts of the string
- DateInterval::format — Formats the interval