1

我正在从 MongoDB 转移到 DynamoDB,而我仍然没有找到解决方案的挑战之一是插入浮点数。

我正在尝试做这样的事情:

list($usec, $sec) = explode(" ", microtime()); 
$timestamp = (float)$usec + (float)$sec; //1379914632.0291
$array_to_insert = array('system_insert_time' => array('N' => $timestamp));

我遇到这样的异常:

Validation errors: [Item][system_insert_time][N] must be of type string

数据库中的字段定义为数字。如果我尝试插入整数,它工作正常。但我需要比秒更高的准确性。作为字符串插入不起作用,因为我希望能够获得大于特定时间戳的数据库条目。

任何帮助是极大的赞赏!谢谢。

4

2 回答 2

0

您已经找到了解决方案,所以我只想将类型转换添加到字符串将是另一种......

$array_to_insert = array('system_insert_time' => array('N' => (string)$timestamp));
#                                                             ^------^
于 2013-10-01T10:13:18.723 回答
0

如果我在插入之前在时间戳上使用 number_format() 似乎它可以工作。

于 2013-09-24T05:32:25.897 回答