我正在从一个 JSON 数据库中提取数据,该数据库存储 unix 纪元中的时间,但由于某种原因,当我将它们拉出时,这些数字正在浮动。这是我以前从未处理过的事情。所以基本上出现了一个类似的数字1293083730000
,因为1.293085408E+12
我需要将数字恢复到纪元时间,以便我可以将它与当前时间进行比较。任何帮助都会很棒。
问问题
865 次
2 回答
3
那是工程符号,一种书写大数的便捷方法。该数字仍然是整数。
问题是 PHP 的内部类型太小,无法将数字表示为小数,请参见以下示例:
<?
$i = 1293083730000;
echo "\$i is $i\n\n";
echo sprintf("\$i is %d\n\n", $i);
echo sprintf("\$i is %e\n\n", $i);
?>
这输出:
$i is 1293083730000
$i is 298573904
$i is 1.293084e+12
您需要 64 位平台或将数字用作字符串或浮点值。有关更多详细信息,请参阅有关整数的 PHP 文档:
于 2010-12-23T06:12:27.057 回答
2
于 2010-12-23T08:35:06.377 回答