PHP Conference Japan 2024

MongoDB\Driver\Cursor::getId

(mongodb >=1.0.0)

MongoDB\Driver\Cursor::getId傳回此游標的 ID

說明

final public MongoDB\Driver\Cursor::getId(bool $asInt64 = false): MongoDB\Driver\CursorId|MongoDB\BSON\Int64

傳回此游標的 ID,該 ID 可唯一識別伺服器上的游標。

警告

從這個方法返回 MongoDB\Driver\CursorId 已在擴充套件版本 1.20.0 中被標記為 *已棄用*。在 2.0 版本中,asInt64 參數將被移除,此方法將始終返回 MongoDB\BSON\Int64 物件。

參數

此函式沒有參數。

回傳值

返回此游標的 ID。如果 asInt64 為 **true**,則 ID 將以 MongoDB\BSON\Int64 物件的形式返回;否則,它將以 MongoDB\Driver\CursorId 物件的形式返回,並發出棄用通知。

錯誤/例外

更新日誌

版本 說明
PECL mongodb 1.20.0 棄用返回 MongoDB\Driver\CursorId。新增了 asInt64 參數以便於未來版本的遷移。如果 asInt64 為 **true**,則 ID 將以 MongoDB\BSON\Int64 的形式返回。

範例

範例 #1 MongoDB\Driver\Cursor::getId() 範例

<?php

/* 在這個例子中,我們將多個文件插入到集合中,並指定
* 較小的 batchSize 以確保第一個批次只包含結果的子集,
* 並且游標在伺服器上保持開啟狀態。 */
$manager = new MongoDB\Driver\Manager("mongodb://127.0.0.1:27017");
$query = new MongoDB\Driver\Query([], ['batchSize' => 2]);

$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert(['x' => 1]);
$bulk->insert(['x' => 2]);
$bulk->insert(['x' => 3]);
$manager->executeBulkWrite('db.collection', $bulk);

$cursor = $manager->executeQuery('db.collection', $query);
var_dump($cursor->getId(true));

?>

上述範例將輸出類似以下內容:

object(MongoDB\BSON\Int64)#5 (1) {
  ["integer"]=>
  string(11) "94810124093"
}
新增註釋

使用者貢獻的註釋

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