2
私はMongoDBにデータベースを持っていますusers
。それは、以下のフィールドが含まれています。私は、次のPHPコードと集約関数を介して第1名(FNAME)と姓(LNAME)を連結しようと mongodbソート集合体をPHPで
_id
- 。
$cursor = $this->users->aggregate( array( '$project' => array( 'name' => array('$concat' => array('$fname', ' ', '$lname')) ) ) );
これはうまくいくようです。 しかし、どのように結果を並べ替えるのですか? 私は結果
$cursor->sort(array("name" => 1));
しかし、これは私に次のエラー与えるソートするコード行を使用してみました。しかし
Fatal error: Call to a member function sort() on array
に、私は、コンソールでこのコードを使用しようとしましたが、それがうまく働きました。
db.users.aggregate({ $project: { 'name' {$concat: ['$fname', ' ', '$lname']} } }, {$sort: {name: 1}});
このコードはうまく機能し、ソートされた方法で結果が得られます。
phpコードのソート機能にはどのような問題がありますか?
ご協力いただければ幸いです。
同じ配列にソートを追加することもできます。[link](http://stackoverflow.com/questions/14131833/mongodb-aggregate-query-using-php-driver)を参照してください。 – Puhal