MongoDB:以十进制格式存储数据

时间:2019-02-08 16:28:59

标签: php mongodb

我有以下文件要存储在MongoDB上。

{
  "date": "2019-02-19 17:10:60.000Z",
  "thickness": 7.85458285
}

我希望以给定的精度存储thickness值,并且我已经知道MongoDB中存在Decimal datatype

目前,我有下面的代码插入给定的值,但是当我检查存储的值时,它是两倍。

$col = $mongoConnection->selectDatabase($db)->selectCollection($collectionName);
$col->insertOne(array("date" => $date, "thickness" => $tck));

如何强制将字段以小数形式存储在PHP应用程序中?

1 个答案:

答案 0 :(得分:2)

我认为您可以在php中使用BSON类型类,可以使用此文档 http://php.net/manual/en/class.mongodb-bson-decimal128.php

$tck = new MongoDB\BSON\Decimal128('7.85458285')
$col = $mongoConnection->selectDatabase($db)->selectCollection($collectionName);
$col->insertOne(array("date" => $date, "thickness" => $tck));