GoLang MongoDB\BSON\Unserializable::bsonUnserialize

request it (386)
GoLang replacement for PHP's MongoDB\BSON\Unserializable::bsonUnserialize [edit | history]



Do you know a GoLang replacement for PHP's MongoDB\BSON\Unserializable::bsonUnserialize? Write it!

PHP MongoDB\BSON\Unserializable::bsonUnserialize

PHP original manual for MongoDB\BSON\Unserializable::bsonUnserialize [ show | php.net ]

MongoDB\BSON\Unserializable::bsonUnserialize

(mongodb >=1.0.0)

MongoDB\BSON\Unserializable::bsonUnserializeConstructs the object from a BSON array or document

Description

abstract public void MongoDB\BSON\Unserializable::bsonUnserialize ( array $data )

Called during unserialization of the object from BSON. The properties of the BSON array or document will be passed to the method as an array.

Remember to check for an _id property when handling data from a BSON document.

Note: This method acts as the constructor of the object. The __construct() method will not be called after this method.

Parameters

data (array)

Properties within the BSON array or document.

Return Values

The return value from this method is ignored.

Examples

Example #1 MongoDB\BSON\Unserializable::bsonUnserialize() example

<?php

class MyDocument implements MongoDB\BSON\Unserializable
{
    private 
$data = [];

    function 
bsonUnserialize(array $data)
    {
        
$this->data $data;
    }
}

$bson MongoDB\BSON\fromJSON('{ "foo": "bar" }');
$value MongoDB\BSON\toPHP($bson, ['root' => 'MyDocument']);
var_dump($value);

?>

The above example will output:

object(MyDocument)#1 (1) {
  ["data":"MyDocument":private]=>
  array(1) {
    ["foo"]=>
    string(3) "bar"
  }
}

See Also