MongoCommandCursor::__construct
(PECL mongo >=1.5.0)
MongoCommandCursor::__construct — Create a new command cursor
说明
public MongoCommandCursor::__construct
( MongoClient
$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) {
…
}
?>
参见
- MongoCommandCursor::createFromDocument() - Create a new command cursor from an existing command response document
- MongoCollection::aggregateCursor() - Execute an aggregation pipeline command and retrieve results through a cursor
- MongoCollection::parallelCollectionScan() - Returns an array of cursors to iterator over a full collection in parallel