我想使用executeQuery mongodb驱动程序php搜索_id。
这是我的用户集合的文档结构
{
"_id" : ObjectId("55ad0bd1032e1b12088b46a8"),
"email" : "[email protected]"
}
而我的PHP代码是
<?php
//Getting object id
$id = new MongoId("55ad0bd1032e1b12088b46a8");
//filtering
$filter = ['_id' =>$id];
$options = [];
// Adding query
$query = new MongoDB\Driver\Query($filter, $options);
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$cursor = $manager->executeQuery('db.users', $query);
当我运行它时,出现以下错误
PHP致命错误:/test.php:27堆栈跟踪中未捕获的异常'MongoDB \ Driver \ Exception \ ConnectionException',消息为'未知运算符:$ id':0 /test.php(27):MongoDB \ Driver \ Manager-> executeQuery('db.users',Object(MongoDB \ Driver \ Query))1 {main}在第27行的test.php中抛出
有什么帮助吗?
根据@Felipe Sulser的评论
线
$id = new MongoId("55ad0bd1032e1b12088b46a8");
应该
$id = new MongoDB\BSON\ObjectId("55ad0bd1032e1b12088b46a8");
现在正在工作
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句