The MongoDB\Driver\ServerApi class
(mongodb >=1.10.0)
Introduction
Class synopsis
Predefined Constants
MongoDB\Driver\ServerApi::V1
-
Server API version 1.
Examples
Example #1 Declare an API version on a manager
<?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;
}
/* The buildInfo command returns a single result document, so we need to access
* the first result in the cursor. */
$buildInfo = $cursor->toArray()[0];
echo $buildInfo->version, "\n";
?>
The above example will output:
4.9.0-alpha7-49-gb968ca0
Example #2 Declare a strict API version on a manager
The following example sets the strict
flag, which
tells the server to reject any command that is not part of the declared API
version. This results in an error when running the buildInfo command.
<?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;
}
/* The buildInfo command returns a single result document, so we need to access
* the first result in the cursor. */
$buildInfo = $cursor->toArray()[0];
echo $buildInfo->version, "\n";
?>
The above example will output:
Provided apiStrict:true, but the command buildInfo is not in API Version 1
Table of Contents
- MongoDB\Driver\ServerApi::bsonSerialize — Returns an object for BSON serialization
- MongoDB\Driver\ServerApi::__construct — Create a new ServerApi instance
- MongoDB\Driver\ServerApi::serialize — Serialize a ServerApi
- MongoDB\Driver\ServerApi::unserialize — Unserialize a ServerApi