在PHP中是否可能实现这个功能?
如果不行,那么可用的最高精度是什么?
system
这样的系统调用需要生成一个 shell 并将输出返回给 PHP。那不会花费比一纳秒更多的时间吗?如果是这样,那么它不会打破以纳秒精度找到时间的目的吗?请给予建议。 - Manu Manjunathtime_nanosleep()
函数,这是我知道的唯一暴露纳秒的函数。 - jpschroeder现在有了这个扩展,它可以进行纳秒级的定时 http://pecl.php.net/hrtime。然而,它是一个秒表类,实现了不同平台上的最高分辨率。
从 PHP 7.3 开始,核心中也有一个跨平台的 hrtime()
函数 http://php.net/manual/en/function.hrtime.php。
hrtime()
的文档说“以[秒,纳秒]的形式返回整数数组”。 - Alexandre Huatmicrotime() 是 PHP 词汇中最高精度的函数。如果您需要纳秒级别的准确度,您还可以使用 Unix date
并指定 %N
格式来进行系统调用。Unix ntp_gettime()
具有更高的分辨率,并返回抖动/漂移/稳定性/偏移/校准数据。