MongoDB\BSON\toPHP

Returns the PHP representation of a BSON value

&reftitle.description; ``array``object```MongoDB\BSON\toPHP` `string` `bson` `array` `typeMap` array()

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).

&mongodb.warning.duplicate-keys;
&reftitle.parameters;

`bson` (`string`)

- BSON value to be unserialized.

&mongodb.parameter.typeMap;
&reftitle.returnvalues;

The unserialized PHP value.

&reftitle.errors;

- Throws `MongoDB\Driver\Exception\InvalidArgumentException` if a class in the type map cannot be instantiated or does not implement MongoDB\BSON\Unserializable.
&mongodb.throws.bson.unexpected;

&reftitle.changelog;

&Version; | &Description;
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.

&reftitle.examples;

### `MongoDB\BSON\toPHP` example

    <?php

    $bson = hex2bin('0e00000010666f6f000100000000');
    $value = MongoDB\BSON\toPHP($bson);
    var_dump($value);

    ?>

&example.outputs;

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

&reftitle.seealso;

- `MongoDB\BSON\Document::toPHP`
- `MongoDB\BSON\fromPHP`
- MongoDB BSON
- mongodb.persistence