php - 为什么这种 mongo 排序在 PHP 中不起作用?

标签 php mongodb

我正在按照 PHP 文档中的示例对集合中的一些记录进行排序:

    $cursor = $mongo->party_scores->find()->limit(10);
    $cursor = $cursor->sort(array("score",-1));
    foreach($cursor as $doc) {
        print_r($doc);
    }

这样做,我看到的文档是随机顺序(未排序)。

但从 mongo 控制台执行此查询会产生正确排序的响应:

db.party_scores.find().sort({score : -1 })

我觉得肯定有什么明显的我遗漏了。

最佳答案

我想我看到了问题所在。而不是这样做:

$cursor->sort(array("score",-1))

试试这个:

$cursor->sort(array("score" => -1))

很容易犯错,但如果你没有马上看到它会很沮丧。

关于php - 为什么这种 mongo 排序在 PHP 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16199015/

相关文章:

php - 在 PHP 中转换 key 的最佳方法

MongoDB 仲裁者 AWS EC2

php - 合并所有表以获得结果

php - 如何从html页面获取文本链接?

php - 跳过 PHPSpreadsheet 导入中的第一行

javascript - mongodb基于数组的唯一索引

python - PyMongo:JSON 键在 mongo 中得到更新

php - 如何使用 magento 结构之外的 php 脚本在 Magento 1.7 中添加产品

php - 将参数传递给可调用函数

mongoDB 集名称不匹配