如果我有两个日期范围(例如5月1日至5月31日和5月23日至6月5日),那么在PHP中找到这两个期间重叠的天数的最佳方法是什么(因此它将返回9)?是否有一种使用DatePeriod对象来实现这一点的方法?
编辑以澄清我的问题:基本上,我想要一个函数,给定任何两个日期范围,都将返回两个日期范围之间共同的天数。如果存在重叠,则返回重叠天数,否则返回0。我认为可以通过为每个范围创建一个日期数组,循环遍历它们以查找相同的日期,并使用变量来计算匹配数量来完成此操作 - 但我正在寻找更优雅的解决方案。
编辑以澄清我的问题:基本上,我想要一个函数,给定任何两个日期范围,都将返回两个日期范围之间共同的天数。如果存在重叠,则返回重叠天数,否则返回0。我认为可以通过为每个范围创建一个日期数组,循环遍历它们以查找相同的日期,并使用变量来计算匹配数量来完成此操作 - 但我正在寻找更优雅的解决方案。
$dateperiod->diff($dateperiod2)
这样的东西。 - Dustin