2015-03-03 76 views
0

我有以下2个日期:获取的飞跃天量的日期范围

$start = new DateTime('2008-06-01'); 
$end = new DateTime('2016-12-31'); 
$diff = $start->diff($end); 

现在$diff->days3135 days,但包括2 飞跃天。 如何计算$start$end日期之间的2月29日的数量?

这是一个进销存系统,其中闰日不应该算作(公司政策)

回答

2

您可以检查它是否是闰年:

this other question而这其中的唯一区别在于哪里他们使用$年你写一个循环,其中$我开始在你想开始的一年,并在结束的一年结束(:

+0

当然,虽然我认为效率很低,但你觉得效率很低。这个? – Sander 2015-03-03 15:36:24

+1

对不起,这是想到的唯一方法。顺便说一下,如果你计划使用闰年通常将它们存储在一个数组中可能是一个好主意。 – Spyron10 2015-03-03 16:03:03