pauci/datetime

增强的 DateTime, DateTimeImmutable 和 DateInterval 对象

v0.7.0 2023-01-18 12:28 UTC

README

Source Code PHP Latest Version Build Status Coverage Status Software License Total Downloads

提供具有时钟抽象的增强 DateTimeDateInterval 对象

  • 基于 DateTimeImmutable 对象(以抑制使用可变版本)
  • 提供用于生产的 SystemClock 和用于测试的 FrozenClock
  • 提供额外的静态工厂方法:now()(使用时钟)、fromString()fromTimestamp()fromFloatTimestamp()
  • 实现 StringableJsonSerializable,具有隐式转换为字符串(ISO 8601)的功能

示例

use Pauci\DateTime\DateTime;

$now = $clock->now();
// or
DateTime::setClock($clock);
$now = DateTime::now();

echo $now;                                            // 2016-05-20T14:30:54.345678+02:00
echo json_encode($now);                               // "2016-05-20T14:30:54.345678+02:00"
echo DateTime::fromTimestamp(1512148033);             // 2017-12-01T18:07:13+01:00
echo DateTime::fromFloatTimestamp(1512148033.000005); // 2017-12-01T18:07:13.000005+01:00

DateTime::setFormat('Y-m-d H:i:s');
echo $now;                                            // 2016-05-20 14:30:54
echo json_encode($now);                               // "2016-05-20 14:30:54"