Exemplo n.º 1
0
 /**
  * Obtener el periodo de tiempo más cercano al tiempo actual
  *
  * @param array $timePeriods
  * @return int
  */
 private function getTimePeriod(array $timePeriods)
 {
     $result = array();
     foreach ($timePeriods as $timePeriod) {
         if ($timePeriod->timeperiod_type == 0) {
             $end = $timePeriod->start_date + $timePeriod->period;
             if (time() <= $end) {
                 $result[] = array('type' => $timePeriod->timeperiod_type, 'start' => $timePeriod->start_date, 'end' => $end);
             }
         } else {
             $start = strtotime('today', time()) + $timePeriod->start_time;
             $end = $start + $timePeriod->period;
             $result[] = array('type' => $timePeriod->timeperiod_type, 'start' => $start, 'end' => $end);
         }
     }
     Util::arraySortByKey($result, 'end');
     return count($result) > 0 ? $result[0] : false;
 }