Класа DatePeriod

Класата DatePeriod креира низа од датуми помеѓу почетната и крајната точка со определен интервал. Ги прифаќа параметрите: почетен датум во форма на објект DateTime, интервал во форма на објект DateInterval, број на повторувања или краен датум. Овозможува прелистување на сите датуми во назначениот опсег.

Синтакса

phpnew DatePeriod(DateTime $start, DateInterval $interval, int $recurrences);
phpnew DatePeriod(DateTime $start, DateInterval $interval, DateTime $end);

Пример

Ќе создадеме период од 5 датуми со интервал од 1 ден:

php<?php
  $start = new DateTime('2025-01-01');
  $interval = new DateInterval('P1D');
  $period = new DatePeriod($start, $interval, 4);
  
  foreach ($period as $date) {
    echo $date->format('Y-m-d') . '<br>';
  }
?>

Резултат од извршувањето на кодот:

php'2025-01-01'
'2025-01-02'
'2025-01-03'
'2025-01-04'
'2025-01-05'

Пример

Ќе создадеме период помеѓу два датума со интервал од 1 недела:

php<?php
  $start = new DateTime('2025-01-01');
  $end = new DateTime('2025-02-01');
  $interval = new DateInterval('P1W');
  $period = new DatePeriod($start, $interval, $end);

  foreach ($period as $date) {
    echo $date->format('Y-m-d') . '<br>';
  }
?>

Резултат од извршувањето на кодот:

php'2025-01-01'
'2025-01-08'
'2025-01-15'
'2025-01-22'
'2025-01-29'

Погледнете ги и

  • класа DateTime,
    за работа со датум и време
  • класа DateInterval,
    за работа со интервали на датуми