function CheckTime($currentTime, $startTime, $endTime){ // // the time passed must meet all the below criteria to return 1 (true): // // - current hour needs to be equal or greater than start hour // - current hour needs to be equal or less than end hour // - current minute needs to be equal or greater than start minute (if current hour is ok) // - current minute needs to be equal or less than end minute (if current hour is ok) // // if any of those checks does not pass, it will return 0 (false) global $cHour; global $cMin; global $sHour; global $sMin; global $eHour; global $eMin; // break up current time $now = explode(":",$currentTime); $cHour = intval($now[0]); // current time - hour $cMin = intval($now[1]); // current time - minute // break up start time $start = explode(":",$startTime); $sHour = intval($start[0]); // start of range - hour $sMin = intval($start[1]); // start of range - minute // brek up end time $end = explode(":",$endTime); $eHour = intval($end[0]); // end of range - hour $eMin = intval($end[1]); // end of range - minute // this is the variable used to track the result of the checks $pass = true; if($sHour <= $eHour){ // the range is on the same day // compare to the start hour if($cHour < $sHour){ $pass = false; }; // compare to the end hour if($cHour > $eHour){ $pass = false; }; // compare to the start min if($cHour == $sHour){ if($cMin < $sMin){ $pass = false; }; }; // compare to the end min if($cHour == $eHour){ if($cMin > $eMin){ $pass = false; }; }; } else { // the range is overnight, so the logic is a little different if( ($cHour < $sHour) && ($cHour > $eHour) ){ $pass = false; }; // compare to the start min if($cHour == $sHour){ if($cMin < $sMin){ $pass = false; }; }; // compare to the end min if($cHour == $eHour){ if($cMin > $eMin){ $pass = false; }; }; }; // done with check, return the result if($pass == false){ return 0; // failed } else { return 1; // passed };};// test it out// make sure you use military time// usage: current time, range start time, range end timeecho CheckTime("06:30","15:20","06:45"); // this should return 1