当前位置:  开发笔记 > 编程语言 > 正文

游标在MongoDb游标上超时错误

如何解决《游标在MongoDb游标上超时错误》经验,为你挑选了1个好方法。

我刚开始使用mongoDb作为PHP的后端.

我只是使用find()查询来满足我的一个需求.我只想要前100个结果,但也想获得总体可用结果.我正在尝试这个.

    $cursor = $this->dbReference->dbName->find($query);
    if($count != 0)
    {
            $cursor->skip($startIndex);
            $cursor->limit($count);
    }
    $totalCount = $cursor->count();

    $entries = array();
    while ($cursor->hasNext())
    {
            $cursor->next();
            $entry = $cursor->current();
            array_push($entries , $entry);
    }

现在问题是..他的搜索结果包含超过50K的结果.但我一次只检索100个.我使用$ cursor-> count()来获取可用结果行的总数.在这一行错误显示"光标超时".请问有谁能告诉我这个问题是什么?或者找到搜索结果总数的替代方法是什么.

提前致谢.



1> Nanhe Kumar..:

您可以通过在以下之前添加此代码来解决游标超时问题find():

MongoCursor::$timeout = -1;
$cursor = $this->dbReference->dbName->find($query);

推荐阅读
帆侮听我悄悄说星星
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有