クエリによる複数ドキュメントの取得
クエリを使って、コレクションからドキュメントのセットを取得することができます。
たとえば、"i"
> 50
であるすべてのドキュメントを取得したい場合は次のようにします。
<?php$connection = new MongoClient();$collection = $connection->database->collectionName;$query = array( "i" => array( '$gt' => 50 ) ); // '$gt' と、シングルクォートで囲んでいることに注意しましょう$cursor = $collection->find( $query );while ( $cursor->hasNext() ){ var_dump( $cursor->getNext() );}?>
これは、"i"
> 50
であるドキュメントをすべて表示します。また、
20 < i <= 30
のような範囲を指定することもできます。
<?php $connection = new MongoClient(); $collection = $connection->database->collectionName; $query = array( 'i' => array( '$gt' => 20, "\$lte" => 30 ) ); $cursor = $collection->find( $query ); while ( $cursor->hasNext() ) { var_dump( $cursor->getNext() ); } ?>
常に $ 記号をエスケープするか、あるいはシングルクォートを使うことを覚えておきましょう。
そうしないと、PHP はこれを変数 $gt
と解釈してしまいます。