Docs Menu

Docs HomePHP Library Manual

MongoDB\ChangeStream::key()

On this page

  • Definition
  • Return Values
  • Examples
  • See Also
MongoDB\ChangeStream::key()

Returns the index of the current event in the change stream.

function key(): integer|null

The index of the first event in a change stream starts at zero and will increment by one for each subsequent event.

The index of the current event in the change stream, or null if there is no current event (i.e. MongoDB\ChangeStream::valid() returns false).

This example reports the index of events while iterating a change stream.

<?php
$uri = 'mongodb://rs1.example.com,rs2.example.com/?replicaSet=myReplicaSet';
$collection = (new MongoDB\Client($uri))->test->inventory;
$changeStream = $collection->watch();
for ($changeStream->rewind(); true; $changeStream->next()) {
if ( ! $changeStream->valid()) {
continue;
}
$event = $changeStream->current();
printf("%d: %s\n", $changeStream->key(), $event['operationType']);
}

Assuming that a document was inserted, updated, and deleted while the above script was iterating the change stream, the output would then resemble:

0: insert
1: update
2: delete
←  MongoDB\ChangeStream::getResumeToken()MongoDB\ChangeStream::next() →