<?php /** * PHP計算兩個時間段是否有交集(邊界重疊不算) * * @param string $beginTime1 開始時間1 * @param string $endTime1 結束時間1 * @param string $beginTime2 開始時間2 * @param string $endTime2 結束時間2 * @return bool * @author blog.snsgou.com */ function is_time_cross($beginTime1 = '', $endTime1 = '', $beginTime2 = '', $endTime2 = ''){ $status = $beginTime2 - $beginTime1; if ($status > 0){ $status2 = $beginTime2 - $endTime1; if ($status2 > 0){ return false; }elseif ($status2 < 0){ return true; }else{ return false; } }elseif($status < 0){ $status2 = $endTime2 - $beginTime1; if ($status2 > 0){ return true; }else if ($status2 < 0){ return false; }else{ return false; } }else{ $status2 = $endTime2 - $beginTime1; if ($status2 == 0){ return false; }else{ return true; } } } ?>