我遵循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))
这是一个容易犯的错误,但如果你不能马上看到它,发现它会非常令人沮丧。