MongoCommandCursor::createFromDocument
(PECL mongo >=1.5.0)
MongoCommandCursor::createFromDocument — Create a new command cursor from an existing command response document
Описание
$connection
, string $hash
, array $document
)Use this method if you have a raw command result with cursor information in it. Note that cursors created with this method cannot be iterated multiple times, as they will lack the original command necessary for re-execution.
Список параметров
-
connection
-
Database connection.
-
hash
-
The connection hash, as obtained through the third by-reference argument to MongoDB::command().
-
document
-
Document with cursor information in it. This document needs to contain the id, ns and firstBatch fields. Such a document is obtained by calling the MongoDB::command() with appropriate arguments to return a cursor, and not just an inline result. See the example below.
Возвращаемые значения
Returns the new cursor.
Примеры
Пример #1 MongoCommandCursor::createFromDocument()
<?php
$m = new MongoClient;
$d = $m->demo;
// Define the aggregation pipeline
$pipeline = [
[ '$group' => [
'_id' => '$country_code',
'timezones' => [ '$addToSet' => '$timezone' ]
] ],
[ '$sort' => [ '_id' => 1 ] ],
];
// Execute the command. The "cursor" option instructs the server to return
// cursor information in the response instead of inline results.
$r = $d->command(
[
'aggregate' => 'cities',
'pipeline' => $pipeline,
'cursor' => [ 'batchSize' => 1 ],
],
null,
$hash
);
// Show result and hash
var_dump( $r, $hash );
// Construct the command cursor
$cursor = MongoCommandCursor::createFromDocument( $m, $hash, $r );
?>
Результатом выполнения данного примера будет что-то подобное:
array(2) { ["cursor"]=> array(3) { ["id"]=> object(MongoInt64)#5 (1) { ["value"]=> string(12) "392143983421" } ["ns"]=> string(11) "demo.cities" ["firstBatch"]=> array(1) { [0]=> array(2) { ["_id"]=> string(2) "AD" ["timezones"]=> array(1) { [0]=> string(14) "Europe/Andorra" } } } } ["ok"]=> float(1) } string(25) "localhost:27017;-;.;17617"
As you can see, the returned cursor information has the id, ns and firstBatch fields.
Смотрите также
- MongoCommandCursor::__construct() - Create a new command cursor
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с базами данных
- Расширения для работы с базами данных отдельных производителей
- MongoDB
- Базовые классы
- MongoCommandCursor::batchSize
- MongoCommandCursor::__construct
- MongoCommandCursor::createFromDocument
- MongoCommandCursor::current
- MongoCommandCursor::dead
- MongoCommandCursor::getReadPreference
- MongoCommandCursor::info
- MongoCommandCursor::key
- MongoCommandCursor::next
- MongoCommandCursor::rewind
- MongoCommandCursor::setReadPreference
- MongoCommandCursor::timeout
- MongoCommandCursor::valid
Коментарии
404 Not Found