$times=[
0=>'08:00-09:00'
1=>'09:20-13:00'
2=>'14:00-18:00'
3=>'19:00-20:00'
];
有这样的时间数组,个数非常多,都是一些预约信息,现在客户选定一个预约时间,我要判断给定的时间与已经预约的是否有重叠。例如:给 08:30-10:00,那么,这个时间就与$time[0],$time[1]有部分重叠区域,我做法是把已经预约的数组做一个七十点排序,用foreach遍历,有一个重叠就把第一个有重叠的时间段输出,但是我想可能会有更好的解决办法,时间段就像有起止点的线段,我把所有的时间段都往x轴上投影,一下就能知道哪些地方有重叠。能不能给出具体方法?谢谢。