Добро пожаловать на форум PHP программистов!
За последние 24 часа нас посетили 16278 программистов и 1782 робота. Сейчас ищет 1941 программист ...
Приступая к работе

DatePeriod::__construct - Создает новый объект DatePeriod

Вернуться к: DatePeriod

DatePeriod::__construct

(PHP 5 >= 5.3.0, PHP 7)

DatePeriod::__constructСоздает новый объект DatePeriod

Описание

public DatePeriod::__construct ( DateTimeInterface $start , DateInterval $interval , int $recurrences [, int $options ] )
public DatePeriod::__construct ( DateTimeInterface $start , DateInterval $interval , DateTimeInterface $end [, int $options ] )
public DatePeriod::__construct ( string $isostr [, int $options ] )

Создает новый объект DatePeriod.

Список параметров

start

Начальная дата.

interval

Интервал.

recurrences

Количество повторений.

end

Конечная дата.

isostr

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

options

Может быть установлено значение DatePeriod::EXCLUDE_START_DATE, для исключения начальной даты из периода.

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

Версия Описание
5.5.8 Тип параметра end изменен на DateTimeImmutable. Ранее использовался DateTime.
5.5.0 Тип параметра start изменен на DateTimeImmutable. Ранее использовался DateTime.

Примеры

Пример #1 Пример использования DatePeriod

<?php
$start 
= new DateTime('2012-07-01');
$interval = new DateInterval('P7D');
$end = new DateTime('2012-07-31');
$recurrences 4;
$iso 'R4/2012-07-01T00:00:00Z/P7D';

// Эти периоды эквивалентны.
$period = new DatePeriod($start$interval$recurrences);
$period = new DatePeriod($start$interval$end);
$period = new DatePeriod($iso);

// При переборе экземпляра DatePeriod в цикле будут отображены все отобранные даты
// периода.
foreach ($period as $date) {
    echo 
$date->format('Y-m-d')."\n";
}
?>

Результат выполнения данного примера:

2012-07-01
2012-07-08
2012-07-15
2012-07-22
2012-07-29

Пример #2 Пример использования DatePeriod с DatePeriod::EXCLUDE_START_DATE

<?php
$start 
= new DateTime('2012-07-01');
$interval = new DateInterval('P7D');
$end = new DateTime('2012-07-31');

$period = new DatePeriod($start$interval$end,
                         
DatePeriod::EXCLUDE_START_DATE);

// При переборе экземпляра DatePeriod в цикле будут отображены все отобранные даты
// периода.
// Однако в этом случае 2012-07-01 не будет отображена.
foreach ($period as $date) {
    echo 
$date->format('Y-m-d')."\n";
}
?>

Результат выполнения данного примера:

2012-07-08
2012-07-15
2012-07-22
2012-07-29



Вернуться к: DatePeriod

© 2024 «PHP.RU — Сообщество PHP-Программистов»
Главная | Форум | Реклама на сайте | Контакты VIP Сувениры
Разработка компании ODware