就比如说 9月15号 9月16号 9月17号,知道从哪天开始和到哪天结束。怎么算出中间的日期。
就比如说 9月15号 9月16号 9月17号,知道从哪天开始和到哪天结束。怎么算出中间的日期。
既然知道开始和结束时间,那么用结束时间戳减去开始时间戳的差值除以86400就是间隔天数
如果是获取中间的日期,我觉得楼上 南小鸟 的代码不够简洁,如下
<code>$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')."<br/>";
}</code>
推荐我用过的最好的PHP时间处理扩展: Carbon,基本上所有的关于时间的计算都能搞定
立即学习“PHP免费学习笔记(深入)”;
Carbon比较方便
不过PHP默认的就有这个功能
<code>$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) {
}</code>
<code>
$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) . "<br>";
}
2016-09-15
2016-09-16
2016-09-17
</code>
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号