Adakah DateTime::__construct() menyokong milisaat dalam PHP 7.1
PHP中文网
PHP中文网 2017-05-24 11:34:12
0
2
864

Terdapat maklumat yang menunjukkan bahawa dalam versi 7.1, DateTime::__construct() sudah boleh menyokong milisaat. Dan secara khusus menekankan:

Ini bermakna bahawa perbandingan naif dua kejadian yang baru dibuat kini lebih berkemungkinan akan mengembalikan FALSE dan bukannya TRUE: new DateTime() == new DateTime()

Walau bagaimanapun, dalam kod saya, bahagian milisaat sentiasa "000000", apakah masalahnya:

<?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);
//    }
}

Keluaran:

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讲师

membalas semua(2)
漂亮男人

Ya, dokumen itu mengatakan ia telah ditambahkan dalam php5.2.2, tetapi saya menemui masalah yang sama selepas ujian dan hanya boleh mengembalikan 000000

Tetapi anda boleh menggunakan fungsi ini: microtime()

習慣沉默

Saya mengujinya secara tempatan.

  • 7.0, menunjukkan '000000'

  • 7.1, menunjukkan data sebenar.
    Jadi, adakah anda pasti persekitaran tempat anda menjalankan kod tersebut ialah 7.1?

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!