The MongoDB\Driver\ServerApi class

(mongodb >=1.10.0)

Einführung

Klassenbeschreibung

finalclassMongoDB\Driver\ServerApiimplementsMongoDB\BSON\Serializable, Serializable {
finalpublicbsonSerialize(): stdClass
finalpublic__construct(string$version, ?bool$strict = null, ?bool$deprecationErrors = null)
finalpublicserialize(): string
finalpublicunserialize(string$data): void
}

Vordefinierte Konstanten

MongoDB\Driver\ServerApi::V1

Server API version 1.

Beispiele

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


$buildInfo = $cursor->toArray()[0];

echo
$buildInfo->version, "\n";

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

 4.9.0-alpha7-49-gb968ca0 

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


$buildInfo = $cursor->toArray()[0];

echo
$buildInfo->version, "\n";

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

 Provided apiStrict:true, but the command buildInfo is not in API Version 1 

Inhaltsverzeichnis

To Top