StartTime EndTime
11.01 11.11
11.02 11.08
11.03 11.15
11.06 11.09
11.13 11.18
11.20 11.25
总时间段为
StartTime EndTime
11.01 11.02
11.02 11.11
11.11 11.13
11.13 11.15
11.15 11.18
11.18 11.20
11.20 11.25
11.01 11.11
11.02 11.08
11.03 11.15
11.06 11.09
11.13 11.18
11.20 11.25
总时间段为
StartTime EndTime
11.01 11.02
11.02 11.11
11.11 11.13
11.13 11.15
11.15 11.18
11.18 11.20
11.20 11.25
2、结果中的 11.18 11.20 是哪里来的?原始数据中并未包括
php,例如开始时间已经存在start数组中 对应结束时间存在end数组,要获得总的时间段分成的各个段的时间
11.01 11.11
11.02 11.08
======================
如果只有这两条数据,得到
11.01 ~ 11.02
11.02 ~ 11.11
两条,这个还算明白
StartTime EndTime
11.01 11.11
11.02 11.08
11.03 11.15
======================
如果有3条数据,为什么不是
11.01 ~ 11.02
11.02 ~ 11.03
11.03 ~ 11.11
11.11 ~ 11.15
4条?
{ for($days=strtotime($from);$days<=strtotime($to);$days+=3600*24)
{
$day[]=date("Y-m-d",$days);
}
return $day;
}$from1="2011-10-9";
$to1="2011-11-4";$from2="2011-10-23";
$to2="2012-3-22";
print_r(array_intersect(calculate_days($from1,$to1),calculate_days($from2,$to2)));/*
Array
(
[14] => 2011-10-23
[15] => 2011-10-24
[16] => 2011-10-25
[17] => 2011-10-26
[18] => 2011-10-27
[19] => 2011-10-28
[20] => 2011-10-29
[21] => 2011-10-30
[22] => 2011-10-31
[23] => 2011-11-01
[24] => 2011-11-02
[25] => 2011-11-03
[26] => 2011-11-04
)
*/
?>