执行函数上的MongoDB错误

时间:2012-06-14 10:03:15

标签: php mongodb database

我有以下代码用于运行mongo查询,其中'mongotester'是数据库名称,'categories'是集合名称

我正在使用PECL mongodb库

$m = new Mongo();
$db = $m->selectDB('mongotester');
$a = $db->execute('return mongotester.categories.count();');
echo "<pre>";
var_dump($a);
echo "<pre>";

当我运行时,我收到以下错误,

array(3) {
   ["errno"]=>
   float(-3)
  ["errmsg"]=>
     string(78) "invoke failed: JS Error: ReferenceError: mongotester is not defined     nofile_a:0"
  ["ok"]=>
  float(0)
}

请帮我纠正一下。

感谢

phpqa.in

1 个答案:

答案 0 :(得分:1)

您可以直接引用该集合,而不是尝试执行()javascript计数,例如:

$m = new Mongo();
$db = $m->selectDB('mongotester');
$a = $db->categories->count();
echo "<pre>";
var_dump($a);
echo "<pre>";

在这种情况下,var_dump只是显示int(0),除非你实际上已经将一些数据插入到类别集合中。