(mongodb >=1.10.0)
MongoDB\Driver\ServerApi::V1Versión 1 de la API del servidor.
Ejemplo #1 Declarar una versión de API en un gestor
<?php
use MongoDB\Driver\Manager;
use MongoDB\Driver\ServerApi;
$v1 = new ServerApi(ServerApi::v1);
$manager = new Manager('mongodb://localhost:27017', [], ['serverApi' => $v1]);
$command = new MongoDB\Driver\Command(['buildInfo' => 1]);
try {
$cursor = $manager->executeCommand('admin', $command);
} catch(MongoDB\Driver\Exception $e) {
echo $e->getMessage(), "\n";
exit;
}
/* La comando buildInfo devuelve un documento único, por lo que es necesario acceder
* al primer resultado del cursor. */
$buildInfo = $cursor->toArray()[0];
echo $buildInfo->version, "\n";
?>El ejemplo anterior mostrará:
4.9.0-alpha7-49-gb968ca0
Ejemplo #2 Declarar una versión de API estricta en un gestor
El siguiente ejemplo establece el flag strict, que
indica al servidor rechazar cualquier comando que no forme parte de la versión
de API declarada. Esto provoca un error al ejecutar el comando buildInfo.
<?php
use MongoDB\Driver\Manager;
use MongoDB\Driver\ServerApi;
$v1 = new ServerApi(ServerApi::v1, true);
$manager = new Manager('mongodb://localhost:27017', [], ['serverApi' => $v1]);
$command = new MongoDB\Driver\Command(['buildInfo' => 1]);
try {
$cursor = $manager->executeCommand('admin', $command);
} catch(MongoDB\Driver\Exception $e) {
echo $e->getMessage(), "\n";
exit;
}
/* El comando buildInfo devuelve un documento único, por lo que es necesario acceder
* al primer resultado del cursor. */
$buildInfo = $cursor->toArray()[0];
echo $buildInfo->version, "\n";
?>El ejemplo anterior mostrará:
Provided apiStrict:true, but the command buildInfo is not in API Version 1