PHP 7.1中DateTime::__construct()是否支持毫秒
PHP中文网
PHP中文网 2017-05-24 11:34:12
0
2
924

有信息显示在7.1版本中,DateTime::__construct()已经可以支持毫秒。并且专门强调:

This means that naive comparisons of two newly created instances will now more likely return FALSE instead of TRUE: new DateTime() == new DateTime()

可是,在我的代码中,毫秒部分总是“000000”,这个是什么问题呢:

<?php
for ($i = 0; $i < 10000; ++$i) {
    $date = new DateTime();
//    if ($date->format('u') != '000000') {
        file_put_contents('./msec.log', "$i:\t" . $date->format('s.u') . PHP_EOL, FILE_APPEND);
//    }
}

输出:

0:      51.000000
1:      51.000000
2:      51.000000
……
4999:   51.000000
5000:   51.000000
5001:   51.000000
……
9997:   51.000000
9998:   51.000000
9999:   51.000000
PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(2)
漂亮男人

是的,文档中是说php5.2.2的时候新加的,但我测试后也发现同样的问题,只能返回000000

但用这个函数是可以的:microtime()

習慣沉默

我本地测试了。

  • 7.0 ,显示 ‘000000’

  • 7.1 ,显示真实数据了。
    所以,你运行代码的环境确定是 7.1 么。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板