PHP Conference Japan 2024

MongoDB\Driver\ServerApi 類別

(mongodb >=1.10.0)

簡介

類別概要

final class MongoDB\Driver\ServerApi implements MongoDB\BSON\Serializable, Serializable {
/* 常數 */
/* 方法 */
final public bsonSerialize(): stdClass
final public __construct(字串 $version, ?布林值 $strict = null, ?布林值 $deprecationErrors = null)
final public serialize(): 字串
final public unserialize(字串 $data): void
}

預定義常數

MongoDB\Driver\ServerApi::V1

伺服器 API 版本 1。

範例

範例 #1 在管理器上宣告 API 版本

<?php

以上範例將輸出

4.9.0-alpha7-49-gb968ca0

範例 #2 在管理器上宣告嚴格的 API 版本

以下範例設定了 strict 旗標,它會告知伺服器拒絕任何不屬於已宣告 API 版本的指令。這將導致在執行 buildInfo 指令時發生錯誤。

<?php

use MongoDB\Driver\Manager;
use
MongoDB\Driver\ServerApi;

$v1 = new ServerApi(ServerApi::v1, true);
$manager = new Manager('mongodb://127.0.0.1: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 指令會回傳單一結果文件,因此我們需要存取
* 游標中的第一個結果。 */
$buildInfo = $cursor->toArray()[0];

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

?>

以上範例將輸出

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

目錄

新增註釋

使用者貢獻的註釋

此頁面沒有使用者貢獻的註釋。
To Top