Klase DatePeriod
Klase DatePeriod izveido datumu secību starp sākuma un beigu punktu ar noteiktu intervālu.
Pieņem parametrus: sākuma datumu DateTime objekta veidā, intervālu DateInterval objekta veidā, atkārtojumu skaitu vai beigu datumu.
Ļauj uzskaitīt visus datumus norādītajā diapazonā.
Sintakse
new DatePeriod(DateTime $start, DateInterval $interval, int $recurrences);
new DatePeriod(DateTime $start, DateInterval $interval, DateTime $end);
Piemērs
Izveidosim periodu no 5 datumiem ar intervālu 1 diena:
<?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>';
}
?>
Koda izpildes rezultāts:
'2025-01-01'
'2025-01-02'
'2025-01-03'
'2025-01-04'
'2025-01-05'
Piemērs
Izveidosim periodu starp diviem datumiem ar intervālu 1 nedēļa:
<?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>';
}
?>
Koda izpildes rezultāts:
'2025-01-01'
'2025-01-08'
'2025-01-15'
'2025-01-22'
'2025-01-29'
Skatiet arī
-
klase
DateTime,
datuma un laika apstrādei -
klase
DateInterval,
datumu intervālu apstrādei