oat-sa / lib-tao-dtms
用于处理具有微秒精度的日期和时间的类
v1.0.2
2022-08-02 13:53 UTC
Requires
- php: ^7.4 || ~8
Requires (Dev)
- phpunit/phpunit: 4.*
This package is auto-updated.
Last update: 2024-09-16 15:16:06 UTC
README
支持微秒的 DateTime 和 DateInterval 类
注意!此包尚未完全测试,因此请谨慎使用。
这个小巧的包包含两个类,仅是对内置 PHP 类的包装,用于处理日期和时间,但支持微秒操作。
安装
包使用 PSR-4 标准,因此要使用这些类,只需使用 Composer 安装包。
$ composer require oat-sa/lib-tao-dtms
{ "require": { "oat-sa/lib-tao-dtms": "~0.5" } }
<?php require 'vendor/autoload.php'; use oat\dtms\DateTime; use oat\dtms\DateInterval;
用法
安装后,您可以创建具有微秒的 DateTime 实例。
$dt = new DateTime('2015-08-08 10:10:10.123456'); echo $dt->format('Y-m-d H:i:s.u'); // 2015-08-08 10:10:10.123456
您还可以使用微秒修改 DateTime。支持的单词有 "microseconds","microsecond","micro","mic"。
$dt = new DateTime('2015-08-08 10:10:10.123456'); $dt->modify('123456 micro'); echo $dt->format('u'); // 246912
当然,此包允许使用支持微秒的 ISO8601 真实格式进行日期区间。
$interval = new DateInterval('PT2.2S'); echo $interval->format('PT%sS'); // PT2.200000S
DateTime 类支持标准方法,如 add
、sub
、diff
、format
等。
要与包一起使用本机 DateTime 和 DateInteval 类,请使用其根命名空间。
$uDateTime = new DateTime(); // DateTime from package $nativeDateTime = new \DateTime(); // built in DateTime
注意!当前包可能与不同的时区不正确地工作,因此需要进行额外的检查和更多的测试。
如果您发现错误或异常行为,请发送给我问题报告,谢谢。
致谢
由 Ivan Klimchuk 为 Open Assessment Technologies S.A. 开发
许可证
GPLv2。请参阅 LICENSE 获取更多信息。