PHP 8.0.24 Released!

Класс DatePeriod

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

Введение

Представляет временной период.

Позволяет перемещаться в заданном временном интервале на равные промежутки времени.

Обзор классов

class DatePeriod implements IteratorAggregate {
/* Константы */
const int EXCLUDE_START_DATE = 1;
const int INCLUDE_END_DATE = 2;
/* Свойства */
public int $recurrences;
public bool $include_end_date;
public bool $include_start_date;
/* Методы */
public __construct(
    DateTimeInterface $start,
    DateInterval $interval,
    int $recurrences,
    int $options = 0
)
public __construct(
    DateTimeInterface $start,
    DateInterval $interval,
    DateTimeInterface $end,
    int $options = 0
)
public __construct(string $isostr, int $options = 0)
public getRecurrences(): ?int
}

Предопределённые константы

DatePeriod::EXCLUDE_START_DATE

Исключает начальную дату, используется в DatePeriod::__construct().

DatePeriod::INCLUDE_END_DATE

Включает дату окончания, используется в DatePeriod::__construct().

Свойства

recurrences

Число повторов, если объект DatePeriod создавался с явным указанием $recurrences. Смотрите DatePeriod::getRecurrences().

include_end_date

Включать ли дату окончания в набор повторяющихся дат или нет.

include_start_date

Включать ли начальную дату в набор дат или нет.

start

Дата начала периода.

current

В процессе итерации будет содержать текущую дату периода.

end

Конечная дата периода.

interval

Спецификация повторяющегося интервала согласно ISO 8601.

Список изменений

Версия Описание
8.2.0 Были добавлены константа DatePeriod::INCLUDE_END_DATE и свойство include_end_date.
8.0.0 Класс DatePeriod теперь реализует интерфейс IteratorAggregate. Ранее вместо этого был реализован интерфейс Traversable.

Содержание

add a note

User Contributed Notes 1 note

up
18
mail at pascalhofmann dot de
5 years ago
When looping over a DatePeriod object, the returned objects always implement DateTimeInterface. The exact type returned depends on how the DatePeriod was created. If $start was a DateTimeImmutable, the objects returned will be of type DateTimeImmutable. If a DateTime object was used, the objects returned will be of type DateTime.
To Top