Lớp DatePeriod
Lớp DatePeriod tạo ra một chuỗi các ngày giữa điểm bắt đầu và điểm kết thúc với một khoảng thời gian xác định.
Nhận các tham số: ngày bắt đầu dưới dạng đối tượng DateTime, khoảng thời gian dưới dạng đối tượng DateInterval, số lần lặp lại hoặc ngày kết thúc.
Cho phép lặp qua tất cả các ngày trong phạm vi đã chỉ định.
Cú pháp
new DatePeriod(DateTime $start, DateInterval $interval, int $recurrences);
new DatePeriod(DateTime $start, DateInterval $interval, DateTime $end);
Ví dụ
Tạo một khoảng thời gian gồm 5 ngày với khoảng cách 1 ngày:
<?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>';
}
?>
Kết quả thực thi mã:
'2025-01-01'
'2025-01-02'
'2025-01-03'
'2025-01-04'
'2025-01-05'
Ví dụ
Tạo một khoảng thời gian giữa hai ngày với khoảng cách 1 tuần:
<?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>';
}
?>
Kết quả thực thi mã:
'2025-01-01'
'2025-01-08'
'2025-01-15'
'2025-01-22'
'2025-01-29'
Xem thêm
-
lớp
DateTime,
để làm việc với ngày và giờ -
lớp
DateInterval,
để làm việc với khoảng thời gian ngày tháng