DatePeriod klassi

DatePeriod klassi boshlang‘ich va tugash nuqtalari orasidagi sanalar ketma-ketligini ma’lum interval bilan yaratadi. Parametrlar sifatida: DateTime obyekti ko‘rinishidagi boshlang‘ich sana, DateInterval obyekti ko‘rinishidagi interval, takrorlanishlar soni yoki tugash sanasini qabul qiladi. Belgilangan oraliqdagi barcha sanalarni takrorlash imkonini beradi.

Sintaksis

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

Misol

1 kunlik interval bilan 5 ta sanadan iborat oraliq yaratamiz:

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>';
  }
?>

Kodni bajarish natijasi:

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

Misol

1 haftalik interval bilan ikkita sana orasidagi oraliqni yaratamiz:

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>';
  }
?>

Kodni bajarish natijasi:

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

Shuningdek qarang

  • DateTime klassi,
    sana va vaqt bilan ishlash uchun
  • DateInterval klassi,
    sana intervallari bilan ishlash uchun