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。如果 asInt64true,则 ID 将作为 MongoDB\BSON\Int64 对象返回;否则,它将作为 MongoDB\Driver\CursorId 对象返回,并将发出弃用通知。

错误/异常

变更日志

版本 描述
PECL mongodb 1.20.0 弃用返回 MongoDB\Driver\CursorId。添加了 asInt64 参数以方便将来版本的迁移。如果 asInt64true,则 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