/** * {@inheritdoc} */ public static function convert(Calends $cal) { $source = last(explode('\\', get_called_class())); $start = $source::createInstance(IntlTimeZone::getGMT(), static::$locale); $start->setTime(BC::mul($cal->getDate('unix'), 1000, 15)); $end = $source::createInstance(IntlTimeZone::getGMT(), static::$locale); $end->setTime(BC::mul($cal->getEndDate('unix'), 1000, 15)); return ['start' => $start, 'duration' => new DateInterval("PT{$cal->getDuration(0)}S"), 'end' => $end]; }
/** * {@inheritdoc} */ public static function convert(Calends $cal) { return ['start' => Source::createFromFormat('U.u', BC::add($cal->getDate('unix'), 0, 6)), 'duration' => new DateInterval("PT{$cal->getDuration(0)}S"), 'end' => Source::createFromFormat('U.u', BC::add($cal->getEndDate('unix'), 0, 6))]; }
/** * {@inheritdoc} */ public static function convert(Calends $cal) { $dtClass = class_exists('\\DateTimeImmutable') ? '\\DateTimeImmutable' : '\\DateTime'; return new Source($dtClass::createFromFormat('U.u', BC::add($cal->getDate('unix'), 0, 6)), $dtClass::createFromFormat('U.u', BC::add($cal->getEndDate('unix'), 0, 6))); }
/** * {@inheritdoc} */ public static function convert(Calends $cal) { return ['start' => Source::createFromTimestamp($cal->getDate('unix')), 'duration' => CarbonInterval::seconds($cal->getDuration(0)), 'end' => Source::createFromTimestamp($cal->getEndDate('unix'))]; }
/** * {@inheritdoc} */ public static function convert(Calends $cal) { return new Source(DateTimeImmutable::createFromFormat('U.u', rtrim(rtrim($cal->getDate('unix'), '0'), '.')), DateTimeImmutable::createFromFormat('U.u', rtrim(rtrim($cal->getEndDate('unix'), '0'), '.'))); }
/** * {@inheritdoc} */ public static function convert(Calends $cal) { $source = @array_pop(explode('\\', get_called_class())); return ['start' => $source::fromDateTime(\DateTime::createFromFormat('U.u', rtrim(rtrim($cal->getDate('unix'), '0'), '.'))), 'duration' => new DateInterval("PT{$cal->getDuration()}S"), 'end' => $source::fromDateTime(\DateTime::createFromFormat('U.u', rtrim(rtrim($cal->getEndDate('unix'), '0'), '.')))]; }