Я думаю, что первый комментарий на данный момент на этой странице http://www.php.net/manual/en/mongo.queries.php будет интересен для вас, но не знаю, будет ли он первым, когда вы его просматриваете, так что вот в чем дело.
Вы можете проверить правильность курсора, используя $cursor->valid()
.И комментарий говорит, что вам, возможно, придется перематывать курсор после его получения, поскольку он иногда не перематывается при получении.
...
$cursor = $mongo_coll->find();
$cursor->rewind();
if ($cursor->valid()) {
$documents = iterator_to_array($cursor);
}
Преимущество вышеупомянутого блока try catch заключается в том, что блок try catch может выдатьисключение, в то время как вы могли бы использовать курсор, когда курсор действительно действовал.