废话不多说直接贴代码
/* * $start 开始时间 * $end 结束时间 * 判断是否在指定时间内 * 0为在时间段内 1为不在时间段内 */ $start = '23:00'; $hour = 6; //限制六个小时 $isTime = checkIsBetweenTime($start, $hour); function checkIsBetweenTime($start, $hour) { // $date = '16:00'; $nowTime = time(); //当前时间 $startTime = strtotime($start); //计算开启时间 if($nowTime < $startTime ){ // 当当前时间小于开始时间则为隔天 $startTime = $startTime - 86400; // 昨天的开始时间 $endTime = $startTime + ( 3600 * $hour); // 结束时间 if($nowTime > $startTime && $nowTime < $endTime) return 0; }elseif($nowTime > $startTime){ // 如当前时间大于开始时间则为当天时间 $endTime = $startTime + (3600 * $hour); //计算结束时间 if($nowTime > $startTime && $nowTime < $endTime) return 0; } return 1; } echo $isTime;