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;
Чтобы получить все документы в коллекции, мы будем использовать 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 );
}
?>
$id
- это поле _id
документа (приведенное к строке),
а $value
- сам документ.
Документация API по MongoCollection::find() содержит больше информации о поиске данных.
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;