【发布时间】:2018-08-31 17:20:18
【问题描述】:
由于我意识到我无法以字符串格式比较($gt、$gte、$lt、$lte 等)日期,因此我正在尝试学习如何使用 UTCDateTime . 而且我无法在 MongoDB\BSON\UTCDateTime 的集合中找到日期
我正在尝试使用此代码。
require '../vendor/autoload.php';
$client = new MongoDB\client("mongodb://localhost:27017");
$database = $client->db;
$center = $database->collection;
$document = $center->find(array("date" => new MongoDB\BSON\UTCDateTime("2018-03-22T09:03:07.147Z")));
foreach ($document as $doc){
var_dump($doc);
}
我拥有的 JSON 就是这个。
"_id" : ObjectId("5ab3714bb57dce13040024c3"),
"name" : "16floor",
"date" : ISODate("2018-03-22T09:03:07.147Z"),
"data" : [
{
"value" : 169
},
{
"value" : 200
},
{
"value" : 80
},
.
.
.
我收到了这个错误
致命错误:未捕获 MongoDB\Driver\Exception\InvalidArgumentException:解析错误 “2018-03-22T09:03:07.147Z”作为 64 位整数 MongoDB\BSON\UTCDateTime 初始化
如何使用 MongoDB\BSON\UTCDateTime 在集合中找到日期?
据我所知,我也可以找到带有时间戳的日期,但我正在寻找带有 UTCDateTime 字段的搜索。
【问题讨论】:
标签: php json mongodb mongodb-query