getwarp/clock

增强的 DateTime 类和 Clock API 实现

3.1.4 2023-05-13 09:01 UTC

This package is auto-updated.

Last update: 2024-09-13 12:23:57 UTC


README

getwarp/clock

增强的 DateTime 类和 Clock API 实现

GitHubPackagist安装使用

安装

通过 Composer

composer require getwarp/clock

使用

DateTime

use Warp\Clock\DateTimeImmutableValue;

$time = DateTimeImmutableValue::now();
// $time = DateTimeImmutableValue::from('2020-02-02 20:22:02');
// $time = DateTimeImmutableValue::from(3 * DateTimeImmutableValue::HOUR); // now + 3 hours

\assert($time instanceof \DateTimeImmutable);

echo (string)$time;
// 2020-02-02 20:22:02
echo \json_encode($time);
// 2020-02-02T20:22:02+00:00

Clock

use Warp\Clock\FrozenClock;
use Warp\Clock\SystemClock;

$clock = new FrozenClock(SystemClock::fromUTC());
$startedAt = $clock->now();
\sleep(5);
$finishedAt = $clock->now();
\assert($startedAt === $finishedAt);

$clock->reset();

变更日志

请参阅 CHANGELOG 了解最近更改的详细信息。

贡献

报告问题发送拉取请求主 Warp 仓库 中。请参阅 贡献指南行为准则 了解详情。

致谢

许可证

MIT 许可证 (MIT)。请参阅 许可证文件 了解更多信息。