0

コマンドラインで作業しているかなり単純なクエリがあり、php を使用して実行しようとしています。

検索ボックスに入力された特定の「タグ」のすべてに一致するドキュメントを探しています。

db.collection.find( { $and: [ { tags: "cats" }, { tags: "video" } ] } )

これをphpに変換する方法がわかりません。私はこれまですべてに codeigniter を使用してきました (Alex Bilbie のライブラリ)。私が試した方法のほとんどは、同じフィールド名 (タグ) を見ているため、最初のタグ (猫) を排除します。

何かご意見は?

4

1 に答える 1

3

PHP は、配列をどのようにフォーマットする必要があるかについて少し注意が必要です。クエリを作成する最良の方法であることがわかったのは、次のようなことです。

json_encode($myQuery); 

次に、それをアプリのコンソールで実際に直接動作するものと比較します。この場合、探しているのは次のとおりです。

$item = array('$and' => array(array('tags' => 'cats'), array('tags' => 'videos')))

次のようにして確認できます。

echo(json_encode(array('$and' => array(array('tags' => 'cats'), array('tags' => 'videos')))));

幸運を!

于 2011-12-09T16:56:21.670 に答える