utcdatetime/utcdatetime

提供一个始终为UTC的datetime实现

1.1.1 2019-05-16 06:04 UTC

README

这是一个小型库,无论你输入什么,始终使用UTC为你的DateTime对象提供时间。

Build Status Code Climate Scrutinizer Code Quality

安装

UTCDateTime通过composer安装。在项目的命令行中调用composer require utcdatetime/utcdatetime

或者,你可以将以下行包含在你的composer.json文件中的require部分

"utcdatetime/utcdatetime" : "stable"

用法

像PHP自己的DateTime对象一样使用UTCDateTime或UTCDateTimeImmutable对象。你不需要重写任何生产代码。只需将use UTCDateTime/DateTime resp. use UTCDateTime\DateTimeimmutable添加到PHP文件的use部分。这会导致PHP使用UTCDateTime对象而不是PHP内部DateTime对象。

setTimeZone的调用将被忽略,所有其他调用将像以前一样执行。唯一的区别是,无论你将什么放入DateTime对象中,它都将始终包含日期的UTC表示。而且没有办法改变这一点。

因此,任何DateTime数据都将始终正确转换为UTC,然后你可以这样处理

use UTCDateTime\DateTime;
$date = new DateTime('2014-11-03 12:34:56', new DateTimeZone('Europe/Berlin'));
echo $date->format(DateTime::RFC3339);
// 2014-11-03T10:34:56+00:00

附加常量

此包还引入了一些格式化常量。

包括

  • DateTime::RFC7231,用于根据RFC 7231格式化日期
  • DateTime::PDF,用于格式化内部PDF存储的日期

许可证

此代码根据MIT许可证授权。

贡献

贡献总是受欢迎。Fork存储库,做你想要的事情,然后提交一个pull请求!