当前位置:Gxlcms > PHP教程 > PHP怎么计算从某一天到某一天一共的天数然后增加?

PHP怎么计算从某一天到某一天一共的天数然后增加?

时间:2021-07-01 10:21:17 帮助过:0人阅读

就比如说 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;$start<=$end;$start->modify('+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 <= $days; $i++) {
    echo date('Y-m-d', $start + 3600 * 24 * $i) . "
"; } 2016-09-15 2016-09-16 2016-09-17

人气教程排行