有很多帖子关于如何检查两个日期之间的重叠。但是我找不到任何一个谈论如何在多个范围之间进行检查。
假设我有这个数组:
$ranges = [
array('start'=>'2014-01-01' , 'end'=> '2014-01-05'),
array('start'=>'2014-01-06' > , 'end'=> '2014-01-10'),
array('start'=>'2014-01-04' > , 'end'=> '2014-01-07')]
有些人可能认为一个检查两个范围之间重叠的函数可以通过循环遍历所有范围来实现,但这是错误的,因为所有范围之间可能相互重叠,但不可能全部同时重叠。
我希望有人能帮我找到一个好的解决方案......
if ($start_first <= $end && $end_first >= $start) { // overlap }
。 - 4thfloorstudios