(mongodb >=1.0.0)
MongoDB\Driver\Manager::executeQuery — Execute a database query
$namespace
, MongoDB\Driver\Query $query
[, MongoDB\Driver\ReadPreference $readPreference
] )
Executes query
on a server. If
readPreference
is provided, it will be used for server
selection; otherwise, the default read preference will be used.
namespace
(string)完全修飾形式の名前空間 ("databaseName.collectionName")。
query
(MongoDB\Driver\Query)実行する MongoDB\Driver\Query。
readPreference
(MongoDB\Driver\ReadPreference)オプションの MongoDB\Driver\ReadPreference で、この操作の対象となるサーバーを指定します。省略した場合は、MongoDB Connection URI で設定したデフォルトの優先読み込みを使います。
成功した場合に MongoDB\Driver\Cursor を返します。
例1 MongoDB\Driver\Manager::executeQuery() example
<?php
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert(['x' => 1]);
$bulk->insert(['x' => 2]);
$bulk->insert(['x' => 3]);
$manager->executeBulkWrite('db.collection', $bulk);
$filter = ['x' => ['$gt' => 1]];
$options = [
'projection' => ['_id' => 0],
'sort' => ['x' => -1],
];
$query = new MongoDB\Driver\Query($filter, $options);
$cursor = $manager->executeQuery('db.collection', $query);
foreach ($cursor as $document) {
var_dump($document);
}
?>
上の例の出力は以下となります。
object(stdClass)#6 (1) { ["x"]=> int(3) } object(stdClass)#7 (1) { ["x"]=> int(2) }