MongoDB\Driver\Manager::executeQuery

Execute a database query

Beschreibung

final public MongoDB\Driver\Cursor MongoDB\Driver\Manager::executeQuery ( string $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.

Parameter-Liste

namespace

A fully qualified namespace (databaseName.collectionName)

query (MongoDB\Driver\Query)

The MongoDB\Driver\Query to execute.

readPreference

Optionally, a MongoDB\Driver\ReadPreference to route the command to. If none given, defaults to the Read Preferences set by the MongoDB Connection URI.

Rückgabewerte

Returns MongoDB\Driver\Cursor on success.

Fehler/Exceptions

  • Throws MongoDB\Driver\AuthenticationException if authentication is needed and fails
  • Throws MongoDB\Driver\ConnectionException if connection to the server fails for other then authentication reasons
  • Throws MongoDB\Driver\Exception\RuntimeException on other errors (e.g. invalid query operators).

Beispiele

Beispiel #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);
}

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

object(stdClass)#6 (1) {
  ["x"]=>
  int(3)
}
object(stdClass)#7 (1) {
  ["x"]=>
  int(2)
}

Siehe auch

  • MongoDB\Driver\Cursor
  • MongoDB\Driver\Query
  • MongoDB\Driver\ReadPreference
  • MongoDB\Driver\Server::executeQuery