Php/docs/class.mongocommandcursor

From Get docs

(PECL mongo >=1.5.0)

Introduction

A command cursor is similar to a MongoCursor except that you use it for iterating through the results of a database command instead of a normal query. Command cursors are useful for iterating over large result sets that might exceed the document size limit (currently 16MB) of a single MongoDB::command() response.

While you can create command cursors using MongoCommandCursor::__construct() or the MongoCommandCursor::createFromDocument() factory method, you will generally want to use command-specific helpers such as MongoCollection::aggregateCursor().

Note that the cursor does not "contain" the database command's results; it just manages iteration through them. Thus, if you print a cursor (f.e. with var_dump() or print_r()), you will see the cursor object but not the result documents.


Cursor Stages

A MongoCommandCursor has two "life stages": pre- and post- command. When a cursor is created, it has not yet contacted the database, so it is in its pre-command state. When the client first attempts to get a result (by calling MongoCommandCursor::rewind(), directly or indirectly), the cursor moves into the post-command state.

The command cursor's batch size and socket timeout may be configured in both the pre- and post- command states.

'Example #1 Adding options to MongoCommandCursor'

<?php$cursor = new MongoCommandCursor(...);$cursor = $cursor->batchSize( 4 );foreach ($cursor as $result) {    var_dump($result);}?>

Class synopsis


MongoCommandCursor implements MongoCursorInterface , Iterator {

/* Methods */

public batchSize ( int $batchSize ) : MongoCommandCursor

public __construct ( MongoClient $connection , string $ns , array $command = array() )

public static createFromDocument ( MongoClient $connection , string $hash , array $document ) : MongoCommandCursor

public current ( ) : array

public dead ( ) : bool

public getReadPreference ( ) : array

public info ( ) : array

public key ( ) : int

public next ( ) : void

public rewind ( ) : array

public setReadPreference ( string $read_preference [, array $tags ] ) : MongoCommandCursor

public timeout ( int $ms ) : MongoCommandCursor

public valid ( ) : bool

}

Table of Contents