(PECL mongo >=1.5.0)
MongoCommandCursor::__construct — Create a new command cursor
$connection
   , string $ns
   , array $command = array()
   )Generally, you should not have to construct a MongoCommandCursor manually, as there are helper functions such as MongoCollection::aggregateCursor() and MongoCollection::parallelCollectionScan(); however, if the server introduces new commands that can return cursors, this constructor will be useful in the absence of specific helper methods. You may also consider using MongoCommandCursor::createFromDocument().
connection
     Database connection.
ns
     Full name of the database and collection (e.g. "test.foo")
command
     Database command.
Returns the new cursor.
Example #1 MongoCommandCursor example
<?php
$m = new MongoClient;
// Define the aggregation pipeline
$pipeline = [
    [ '$group' => [
        '_id' => '$country_code',
        'timezones' => [ '$addToSet' => '$timezone' ]
    ] ],
    [ '$sort' => [ '_id' => 1 ] ],
];
// Construct a MongoCommandCursor object
$cursor = new MongoCommandCursor(
    $m, // MongoClient object
    'demo.cities', // namespace
    [
        'aggregate' => 'cities',
        'pipeline' => $pipeline,
        'cursor' => [ 'batchSize' => 0 ],
    ]
);
foreach($cursor as $result) {
   …
}
?>