我在codeigniter项目中有一个视图要打印一些详细信息,包括一个月的日期。日期范围从表中数据的最小日期到最大日期摘要,如"2020-01-01"到"2020-08-31"。如果表中的最新日期是"2020-10-30",则该日期将是最长日期。假设需要将8月份的日期打印为"2020-08-01"到"2020-08-31",并包含在视图中。我使用了以下代码
<?php
if(!empty($printFuelUse)){
foreach ($printFuelUse as $rows){
$begin = new DateTime($rows->mindate);
$end = new DateTime($rows->maxdate);
$interval = DateInterval::createFromDateString('1 day');
$period = new DatePeriod($begin, $interval, $end);
}
}
foreach ($period as $dt) {
echo $dt->format("l Y-m-d H:i:sn");
}
?>
$printFuelUse包括模型中的数组值。这是正确的outs-mindate&表中的最大日期
我想得到如下输出:
+------------+
| Date |
+------------+
| 2020-08-01 |
| 2020-08-02 |
| 2020-08-03 |
| 2020-08-04 |
| 2020-08-05 |
| 2020-08-06 |
| ………… |
| …………. |
| 2020-08-30 |
| 2020-08-31 |
+------------+
但没有得到预期的产出。有人能帮忙吗?请。只考虑输出的第一列
我看不出日期周期在这里有什么帮助:
$begin = new DateTime('2020-08-01');
$end = new DateTime('2020-08-31');
for ($dt = clone $begin; $dt <= $end; $dt->modify('+1 day')) {
echo $dt->format("Y-m-dn");
}