MongoDB PHP限制不起作用

Ind*_*ndy 2 php find limit mongodb

我在MongoDB PHP驱动程序中使用此代码来获取数据库中的所有文档

$result = $collection->find();

foreach ($result as $doc) {
    print_r($doc);
}
Run Code Online (Sandbox Code Playgroud)

但是,当添加限制时,它不再起作用:不再打印文档:

$result = $collection->find()->limit(10);

foreach ($result as $doc) {
    print_r($doc);
}
Run Code Online (Sandbox Code Playgroud)

数据库中肯定有足够的文档.我无法弄清楚这是什么问题.

Ind*_*ndy 9

我已经通过查看测试版的来源解决了这个问题.该文档似乎仅适用于旧版mongo扩展,而不是较新的mongodb扩展.

错误日志显示:Call to undefined method MongoDB\\Driver\\Cursor::addOption().我检查了文档并得出结论,该功能应该有效,因为它说(PECL mongo >=0.9.0).注意丢失db之后mongo.

我通过执行以下操作来修复它: $collection->find([], [ 'limit' => 2 ]);,提供一个空的过滤器数组,然后在另一个数组中添加我的选项.