public static function createFromTransition(array $transition, $deduceRecurringRule = TRUE) { $date = new DateTime($transition['time'], new DateTimeZone('UTC')); $transitionRule = new self(array('isdst' => $transition['isdst'], 'offset' => $transition['offset'], 'abbr' => $transition['abbr'], 'from' => clone $date)); if (!$deduceRecurringRule) { $transitionRule->addTransitionDate($date); } else { $transitionRule->append(array('month' => $date->format('n'), 'hour' => $date->format('G'), 'minute' => (int) $date->format('i'), 'second' => (int) $date->format('s'), 'wkday' => (int) $date->format('w'), 'numwk' => self::getNumWk($date))); } return $transitionRule; }