2013-04-24 52 views
6

我下面從PHP文檔爲例,一些記錄集合中排序:爲什麼這個mongo排序不能在PHP中工作?

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

這樣做,我看到隨機順序(未排序)的文件。

但在執行從蒙戈控制檯此查詢產生正確排序響應:

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

我覺得一定有什麼明顯的我失蹤。

回答

13

我想我看到了問題。相反,這樣做的:

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

試試這個:

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

容易犯的錯誤,但很無奈的發現,如果你沒有看到它的時候了。

+1

這似乎是它,謝謝。我可能會盯着它一個小時而沒有看到它。 – justkevin 2013-04-24 19:57:40

+0

未捕獲的錯誤:調用未定義的方法MongoDB \ Driver \ Cursor :: sort()?什麼是錯誤? – Sibidharan 2017-07-28 09:15:59

相關問題