用于检查daterange的Mongo Php
我有一个这样的问题用于检查daterange的Mongo Php,php,mongodb,Php,Mongodb,我有一个这样的问题 db.listings.find({ "h_id": ObjectId("52f1fb19388f5827148b4567"), "data.status":1,"data.startdate":new Date("2014-03-10"),"data.enddate":new Date("2014-03-12") }, {"data.$":1 }); $query = array("h_id" => new MongoId($hId), "da
db.listings.find({ "h_id": ObjectId("52f1fb19388f5827148b4567"), "data.status":1,"data.startdate":new Date("2014-03-10"),"data.enddate":new Date("2014-03-12") }, {"data.$":1 });
$query = array("h_id" => new MongoId($hId),
"data.status" => 1,
"data.startdate" => new MongoDate(strtotime("2014-03-10")),
"data.enddate" => new MongoDate(strtotime("2014-03-12")));
$projection = array("data.$" => true);
$cursor = $collection->find($query, $projection);
将返回起始日期为2014-03-10、结束日期为2014-03-12的子文件
但是,当我尝试在php mongo中编写相同的代码时,数组是空的
我试过这样做
db.listings.find({ "h_id": ObjectId("52f1fb19388f5827148b4567"), "data.status":1,"data.startdate":new Date("2014-03-10"),"data.enddate":new Date("2014-03-12") }, {"data.$":1 });
$query = array("h_id" => new MongoId($hId),
"data.status" => 1,
"data.startdate" => new MongoDate(strtotime("2014-03-10")),
"data.enddate" => new MongoDate(strtotime("2014-03-12")));
$projection = array("data.$" => true);
$cursor = $collection->find($query, $projection);
是否可以在php mongo中直接检查日期,或者我们是否需要使用“$lte”或“$gte”来检查日期范围
谁能帮我修一下吗
谢谢有人能帮我解决这个问题吗?你能解决这个问题吗?你的例子应该在PHP中运行吗?如果它不起作用,你应该发布一个示例文档。。我怀疑这些日期存储的时区与shell中匹配,但与PHP中使用的时区不匹配。