如何检查传递给应用程序的时间戳是否在微范围内?这样我就可以将其除以1000。我正在寻找PHP中的解决方案。
$timestamp = 1554780109;
$_POST['time'] = 1554373624995;
(($timestamp - $_POST['time']) <= 60)
答案 0 :(得分:0)
答案 1 :(得分:0)
好吧,目前微时间戳至少使用40位作为它们的位集,因此,如果将这些位右移并得到任何不同于零的结果,则时间戳以微秒为单位。见下面...
function checkMicroTS($timestamp): bool {
return $timestamp >> 40;
}
var_dump(checkMicroTS(1554808523)); // false
var_dump(checkMicroTS(1554808523480)); // true
“但是,如果常规时间戳记到达第40位,此代码将不再起作用?”
是的!但是,在这种情况下,我们的商标为1099511627776(02/20/36812 @ 12:36 am(UTC)),所以我认为这不会成为问题=)