If you would prefer to have the results returned as an associative array, after executing your query you could call $cursor->setTypeMap like this:
$cursor->setTypeMap(['root' => 'array', 'document' => 'array', 'array' => 'array']);(mongodb >=1.0.0)
MongoDB\Driver\Cursor::setTypeMap — Establece un mapa de tipos para usar en la deserialización BSON
Establece la configuración del mapa de tipos que se usará al deserializar los resultados BSON en valores de PHP.
typeMap (array)No se retorna ningún valor.
Al iterar sobre el cursor, también se pueden lanzar las siguientes excepciones debido a una configuración incorrecta del mapa de tipos:
Ejemplo #1 Ejemplo de MongoDB\Driver\Cursor::setTypeMap()
<?php
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$bulk = new MongoDB\Driver\BulkWrite;
$id = $bulk->insert(['x' => 1]);
$manager->executeBulkWrite('db.collection', $bulk);
$query = new MongoDB\Driver\Query(['_id' => $id]);
$cursor = $manager->executeQuery('db.collection', $query);
$cursor->setTypeMap(['root' => 'array']);
foreach ($cursor as $document) {
var_dump($document);
}
?>Resultado del ejemplo anterior es similar a:
array(2) {
["_id"]=>
object(MongoDB\BSON\ObjectId)#6 (1) {
["oid"]=>
string(24) "56424fb76118fd3267180741"
}
["x"]=>
int(1)
}