使用php在mongodb中执行聚合时执行命令的未知错误(返回空文档)

时间:2016-03-07 04:49:29

标签: php mongodb

我想在mongodb中分组:我的代码如下:

$m = new MongoClient("localhost");
$c = $m->selectDB("grl_db")->selectCollection("USER_TBL");
$data = array (
    'title' => 'this is my title',
    'author' => 'bob',
    'posted' => new MongoDate,
    'pageViews' => 5,
    'tags' => array ( 'fun', 'good', 'fun' ),
    'comments' => array (
      array (
        'author' => 'joe',
        'text' => 'this is cool',
      ),
      array (
        'author' => 'sam',
        'text' => 'this is bad',
      ),
    ),
    'other' =>array (
      'foo' => 5,
    ),
);
$d = $c->insert($data, array("w" => 1));

$ops = array(
    array(
        '$project' => array(
            "author" => 1,
            "tags"   => 1,
        )
    ),
    array('$unwind' => '$tags'),
    array(
        '$group' => array(
            "_id" => array("tags" => '$tags'),
            "authors" => array('$addToSet' => '$author'),
        ),
    ),
);
$results = $c->aggregate($ops);

但是错误发生了:

  

输入:MongoResultException

     

消息:执行命令时出现未知错误(空文档   返回)

     

文件名:   d:\项目\ SNS \ grl1.0 \树干\ SRC \服务器\ GRL \应用\模型\ user_model.php

     

行号:195

我该如何解决这个问题。请帮帮我!!!

1 个答案:

答案 0 :(得分:0)

问题是php版本。 要聚合,php版本将超过5.6.1 我认为你的php版本可能低于5.6。 请使用xampp更高版本。