我在mongoDB中创建了查询。在MongoChef中,此查询生成超过1万条记录。现在我想在PHP中执行此查询。所以我不知道如何用动态日期在php中编写查询? 我在mongoDB中的查询
db.PMS.aggregate(
[
{ $match: { "EventTS":{$gt:new Date("2015-01-01")}}},
]
);
现在我尝试使用pass动态日期变量
在PHP中进行转换 <?php
$mongo = new MongoClient();
$database = $mongo->securens_final;
$collection = $database->PMS;
$start_date = new MongoDate(strtotime('2015-01-01 00:00:00'));
$pipeline = [
[
'$match' => [
'EventTS' => ['$gt', $start_date]
]
]
];
$cursor = $collection->aggregate($pipeline);
echo "<pre>";
print_r($cursor);exit;
?>
使用此查询后,我得到了这样的回复
Array
(
[waitedMS] => 0
[result] => Array
(
)
[ok] => 1
)
我不知道我的错误是什么。任何人都可以建议我如何解决这个问题。
答案 0 :(得分:1)
Cursor
不包含任何数据,它会根据您的需要获取数据(例如,当您遍历结果时)。如果您需要预先提供所有数据,则需要使用$data = iterator_to_array($cursor)
。