This component provides enhanced DateTime classes and Clock API implementations in PHP.
Via Composer
$ composer require spaceonfire/clockDateTime:
usespaceonfire\Clock\DateTimeImmutableValue;
$time = DateTimeImmutableValue::now();
// $time = DateTimeImmutableValue::from('2020-02-02 20:22:02');// $time = DateTimeImmutableValue::from(3 * DateTimeImmutableValue::HOUR); // now + 3 hours\assert($timeinstanceof \DateTimeImmutable);
echo (string)$time;
// 2020-02-02 20:22:02echo\json_encode($time);
// 2020-02-02T20:22:02+00:00Clock:
usespaceonfire\Clock\FrozenClock;
usespaceonfire\Clock\SystemClock;
$clock = newFrozenClock(SystemClock::fromUTC());
$startedAt = $clock->now();
\sleep(5);
$finishedAt = $clock->now();
\assert($startedAt === $finishedAt);
$clock->reset();Please see CHANGELOG for more information on what has changed recently.
Report issues and send Pull Requests in the main spaceonfire repository. Please see CONTRIBUTING and CODE_OF_CONDUCT for details.
The MIT License (MIT). Please see License File for more information.