The MongoDB\Driver\ServerApi class

(mongodb >=1.10.0)

Вступ

ΠšΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ огляд класу

final class MongoDB\Driver\ServerApi implements MongoDB\BSON\Serializable, Serializable {
/* ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚ΠΈ */
/* ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈ */
final public bsonSerialize(): stdClass
final public __construct(string $version, ?bool $strict = null, ?bool $deprecationErrors = null)
}

ΠŸΠΎΠΏΠ΅Ρ€Π΅Π΄Π½ΡŒΠΎ Π²ΠΈΠ·Π½Π°Ρ‡Π΅Π½Ρ– константи

MongoDB\Driver\ServerApi::V1

Server API version 1.

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄ΠΈ

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄ #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";

?>

Поданий Π²ΠΈΡ‰Π΅ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄ Π²ΠΈΠ²Π΅Π΄Π΅:

4.9.0-alpha7-49-gb968ca0

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄ #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";

?>

Поданий Π²ΠΈΡ‰Π΅ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄ Π²ΠΈΠ²Π΅Π΄Π΅:

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

Зміст

οΌ‹add a note

User Contributed Notes

There are no user contributed notes for this page.