Использование курсора для получения всех документов

Чтобы получить все документы в коллекции, мы будем использовать MongoCollection::find(). Метод find() возвращает объект MongoCursor, который позволяет перебирать набор документов, соответствующих нашему запросу. Итак, чтобы запросить все документы и распечатать их:

<?php
$connection 
= new MongoClient();
$collection $connection->database->collectionName;

$cursor $collection->find();
foreach ( 
$cursor as $id => $value )
{
    echo 
"$id: ";
    
var_dump$value );
}
?>
и это должно вывести все 101 документов в коллекции. $id - это поле _id документа (приведенное к строке), а $value - сам документ.

Смотрите также

Документация API по MongoCollection::find() содержит больше информации о поиске данных.

add a note add a note

User Contributed Notes 1 note

up
0
mike at brenden dot com
10 years ago
Instead of running while() or foreach() over a Mongo cursor, get all results from cursor into array:

$curs = $Mdb->tbl->find();
$arrOut = iterator_to_array( $curs, false );  // false uses numeric index.
return $arrOut;
To Top