(PECL mongo >=1.0.5)
MongoCursor::info — Получает информацию о создании и итерации курсора
Можно вызвать до или после того, как курсор начнет итерацию.
У этой функции нет параметров.
Возвращает пространство имен, размер пакета, лимит, пропуск, флаги, запрос и проецируемые поля для этого курсора. Если курсор начал итерацию, будет включена дополнительная информация об итерации и соединении.
Версия | Описание |
---|---|
1.1.0 | Добавлен ряд других полей, включая id (идентификатор курсора), at (счетчик драйвера для которого документ является текущим), numReturned (число, возвращаемое сервером в текущем пакете) и server (на какой сервер был отправлен запрос) - полезно в сочетании с Предпочтения чтения. |
1.0.10 | Добавлено поле started_iterating, логическое значение, указывающее, является ли курсор пре- или пост-запросом. |
Пример #1 Пример использования MongoCursor::info()
<?php
$m = new MongoClient();
$cursor = $m->test->foo->find(array("x" => 4), array("y" => 0));
echo "Перед началом итерации:\n";
var_dump($cursor->info());
echo "\nПосле начала итерации:\n";
$cursor->rewind();
var_dump($cursor->info());
?>
Результатом выполнения данного примера будет что-то подобное:
Перед началом итерации: array(8) { ["ns"]=> string(8) "test.foo" ["limit"]=> int(0) ["batchSize"]=> int(0) ["skip"]=> int(0) ["flags"]=> int(0) ["query"]=> array(1) { ["x"]=> int(4) } ["fields"]=> array(1) { ["y"]=> int(0) } ["started_iterating"]=> bool(false) } После начала итерации: array(15) { ["ns"]=> string(8) "test.foo" ["limit"]=> int(0) ["batchSize"]=> int(0) ["skip"]=> int(0) ["flags"]=> int(0) ["query"]=> array(1) { ["x"]=> int(4) } ["fields"]=> array(1) { ["y"]=> int(0) } ["started_iterating"]=> bool(true) ["id"]=> int(0) ["at"]=> int(0) ["numReturned"]=> int(1) ["server"]=> string(25) "localhost:27017;-;.;26450" ["host"]=> string(9) "localhost" ["port"]=> int(27017) ["connection_type_desc"]=> string(10) "STANDALONE" }