PHP 怎么计算从某一天到某一天一共的天数然后增加?
程序员文章站
2022-03-31 08:09:00
...
就比如说 9月15号 9月16号 9月17号,知道从哪天开始和到哪天结束。怎么算出中间的日期。
回复内容:
就比如说 9月15号 9月16号 9月17号,知道从哪天开始和到哪天结束。怎么算出中间的日期。
既然知道开始和结束时间,那么用结束时间戳减去开始时间戳的差值除以86400就是间隔天数
如果是获取中间的日期,我觉得楼上 南小鸟
的代码不够简洁,如下
$start = new DateTime('2016-09-15');
$end = new DateTime('2016-09-17');
for ($start;$startmodify('+1 day')) {
echo $start->format('Y-m-d')."
";
}
推荐我用过的最好的PHP时间处理扩展: Carbon,基本上所有的关于时间的计算都能搞定
Carbon比较方便
不过PHP默认的就有这个功能
$start = new DateTime('2016-09-15');
$end = new DateTime('2016-09-17');
$inteval = new DateInteval('P1D');
$period = new DatePeriod($start, $end, $inteval);
foreach ($period as $date) {
}
$start = '2016-09-15';
$end = '2016-09-17';
$start = strtotime($start);
$end = strtotime($end);
$days = ($end - $start) / 3600 / 24;
for ($i = 0; $i ";
}
2016-09-15
2016-09-16
2016-09-17