如何使用 php 和 mongo 切片查找结果


How to slice find result with php and mongo?

我正在用php和mongo做一个网站。我想显示一个联系人列表,按页面显示 15 个联系人,并在页面底部添加一个 [下一个]/[上一个] 链接。所以我需要对 [find] 运算符返回的结果进行切片。我现在花了 2 个小时查看文档,但没有找到这样做的方法,主要是因为我不在任何领域进行投影:我只想要所有字段,并且具有从 1 到 15 然后是 16 到 30 的值,等等......怎么做??

我尝试过这样的事情,但它不起作用:

$cursor = $contacts->find(array(), array( '$slice' => [1, 15] ) );

这是一个最简单/最小的分页示例。我只向您展示您正在努力的代码。这不是一个完整的工作分页代码。其余的你可以自己写,我猜。

$skip_results = (int)($results_per_page * ($page_number - 1));
$cursor = $collection->find($query)->limit($results_per_page)->skip($skip_results);

然后你可以循环$cursor做任何你想做的事情。希望这足以朝着正确的方向发展。