update page now
PHP 8.1.34 Released!

MongoDB\Driver\Cursor::setTypeMap

(mongodb >=1.0.0)

MongoDB\Driver\Cursor::setTypeMapDefine un tipo de mapa a utilizar para la deserialización BSON

Descripción

final public MongoDB\Driver\Cursor::setTypeMap(array $typemap): void

Define la configuración de mapeo de tipo a utilizar durante la deserialización de los resultados BSON en valores PHP.

Parámetros

typeMap (array)

Configuración del mapa de tipos.

Valores devueltos

No se retorna ningún valor.

Errores/Excepciones

  • Lanza una excepción MongoDB\Driver\InvalidArgumentException en caso de error durante el análisis de un argumento.

Durante la iteración sobre el cursor, las siguientes excepciones pueden también ser lanzadas debido a una configuración de mapeo de tipo incorrecta:

Ejemplos

Ejemplo #1 Ejemplo con 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)
}

Ver también

add a note

User Contributed Notes 1 note

up
18
tdrpic
9 years ago
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']);
To Top

Follow Lee on X/Twitter - Father, Husband, Serial builder creating AI, crypto, games & web tools. We are friends :) AI Will Come To Life!

Check out: eBank.nz (Art Generator) | Netwrck.com (AI Tools) | Text-Generator.io (AI API) | BitBank.nz (Crypto AI) | ReadingTime (Kids Reading) | RewordGame | BigMultiplayerChess | WebFiddle | How.nz | Helix AI Assistant