# MongoDB\BSON\toPHP

(mongodb >=1.0.0)

MongoDB\BSON\toPHP — Returns the PHP representation of a BSON value

### Descripción

MongoDB\BSON\toPHP(string `$bson`, array `$typeMap` = array()): array|object

Unserializes a BSON document (i.e. binary string) to its PHP representation. The `typeMap` paramater may be used to control the PHP types used for converting BSON arrays and documents (both root and embedded).

Advertencia

BSON documents can technically contain duplicate keys because documents are stored as a list of key-value pairs; however, applications should refrain from generating documents with duplicate keys as server and driver behavior may be undefined. Since PHP objects and arrays cannot have duplicate keys, data could also be lost when decoding a BSON document with duplicate keys.

### Parámetros

`bson` (string)

  BSON value to be unserialized.

`typeMap` (array)

  Configuración del mapa de tipos.

### Valores devueltos

The unserialized PHP value.

### Errores/Excepciones

- Throws MongoDB\Driver\Exception\InvalidArgumentException if a class in the type map cannot be instantiated or does not implement MongoDB\BSON\Unserializable.
- Lanza una MongoDB\Driver\Exception\UnexpectedValueException si la entrada no contiene exactamente un documento BSON. Las posibles razones incluyen, pero no están limitadas a, BSON no válido, datos extra (tras leer el documento BSON), o un error » libbson no esperado.

### Historial de cambios

Versión | Descripción
--- | ---
PECL mongodb 1.4.0 | If the input contains an unsupported, deprecated BSON type, the driver will now no longer log a warning to the debug log, but instead will create an object representing this type.
PECL mongodb 1.3.2 | MongoDB\Driver\Exception\UnexpectedValueException is no longer thrown if the input contains an unsupported, deprecated BSON type. Such types will be ignored (as they were in versions before 1.3.0), although the driver will now log a warning to the debug log (see: mongodb.debug).
PECL mongodb 1.3.0 | MongoDB\Driver\Exception\UnexpectedValueException is thrown if the input contains an unsupported, deprecated BSON type. Previously, such types were ignored.

### Ejemplos

Ejemplo #1 MongoDB\BSON\toPHP() example

`<?php
$bson = hex2bin('0e00000010666f6f000100000000');
$value = MongoDB\BSON\toPHP($bson);
var_dump($value);
?>`

El resultado del ejemplo sería:

    object(stdClass)#1 (1) {
      ["foo"]=>
      int(1)
    }

### Ver también

- MongoDB\BSON\Document::toPHP()
- MongoDB\BSON\fromPHP() - Returns the BSON representation of a PHP value
- » MongoDB BSON
- Persistencia de datos