MongoDB\Driver\Cursor::getId

(mongodb >=1.0.0)

MongoDB\Driver\Cursor::getIdRetorna o ID para este cursor

Descrição

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

Retorna o ID para este cursor, que identifica de forma única o cursor no servidor.

Warning

Retornar MongoDB\Driver\CursorId a partir deste método tornou-se DEFASADO a partir da versão 1.20.0 da extensão. Na versão 2.0, o parâmetro asInt64 será removido e este método sempre retornará um objeto MongoDB\BSON\Int64.

Parâmetros

Esta função não possui parâmetros.

Valor Retornado

Retorna o ID para este cursor. Se asInt64 for true, o ID será retornado como um objeto MongoDB\BSON\Int64; caso contrário, sertá retornado como um objeto MongoDB\Driver\CursorId e um aviso de defasagem será emitido.

Erros/Exceções

Registro de Alterações

Versão Descrição
PECL mongodb 1.20.0 O retorno de um MongoDB\Driver\CursorId tornou-se defasado. Adicionado o parâmetro asInt64 para facilitar a migração para versões futuras. Se asInt64 for true, o ID será retornado como um MongoDB\BSON\Int64.

Exemplos

Example #1 Exemplo de MongoDB\Driver\Cursor::getId()

<?php

/* Neste exemplo, são inseridos vários documentos na coleção e especificado
 * um batchSize menor para garantir que o primeiro lote contenha apenas um subconjunto dos
 * resultados e que o cursor permaneça aberto no servidor. */
$manager = new MongoDB\Driver\Manager("mongodb://localhost: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));

?>

O exemplo acima produzirá algo semelhante a:

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