(mongodb >=1.0.0)
MongoDB\Driver\Manager::executeQuery — Ejecuta una consulta de base de datos
$namespace, MongoDB\Driver\Query $query, ?array $options = null): MongoDB\Driver\Cursor
   Selecciona un servidor en función de la opción "readPreference"
   y ejecuta la consulta en ese servidor.
  
   Los valores por omisión de la opción "readPreference" y de
   la opción "readConcern" de la consulta serán deducidos a
   partir de una transacción activa (indicada por la opción "session"),
   seguida de la URI de conexión.
  
namespace (string)
        Un espacio de nombres completamente calificado (ej. "databaseName.collectionName")
    
query (MongoDB\Driver\Query)La consulta a ejecutar.
options
| Option | Type | Description | 
|---|---|---|
| readPreference | MongoDB\Driver\ReadPreference | Una preferencia de lectura a utilizar para seleccionar un servidor para la operación. | 
| session | MongoDB\Driver\Session | Una sesión a asociar a la operación. | 
Retorna un MongoDB\Driver\Cursor en caso de éxito.
| Versión | Descripción | 
|---|---|
| PECL mongodb 2.0.0 | El parámetro optionsya no acepta
        una instancia de MongoDB\Driver\ReadPreference. | 
| PECL mongodb 1.21.0 | Pasar un objeto MongoDB\Driver\ReadPreference como optionsestá obsoleto y será eliminado en la 2.0. | 
| PECL mongodb 1.4.0 | El tercer parámetro es ahora un array options.
        Por razones de compatibilidad ascendente, este parámetro siempre aceptará un
        objeto MongoDB\Driver\ReadPreference. | 
Ejemplo #1 Ejemplo de MongoDB\Driver\Manager::executeQuery()
<?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);
}
?>El ejemplo anterior mostrará:
object(stdClass)#6 (1) {
  ["x"]=>
  int(3)
}
object(stdClass)#7 (1) {
  ["x"]=>
  int(2)
}
Ejemplo #2 Limitar el tiempo de ejecución de una consulta
    La opción "maxTimeMS" de la clase
    MongoDB\Driver\Query puede ser utilizada para limitar
    el tiempo de ejecución de una consulta. Tenga en cuenta que este límite de tiempo es
    aplicado en el lado del servidor y no tiene en cuenta la latencia de la red. Ver
    » Terminar las operaciones en curso
     en el manual de MongoDB para más información.
   
<?php
$manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');
$filter = ['x' => ['$gt' => 1]];
$options = [
    'maxTimeMS' => 1000,
];
$query = new MongoDB\Driver\Query($filter, $options);
$cursor = $manager->executeQuery('db.collection', $query);
foreach ($cursor as $document) {
    var_dump($document);
}
?>Si la consulta no logra terminar después de un segundo de ejecución en el servidor, una MongoDB\Driver\Exception\ExecutionTimeoutException será lanzada.
