« MongoDB\BSON\Unserializable
MongoDB\BSON\BinaryInterface »

MongoDB\BSON\Unserializable::bsonUnserialize

(mongodb >=1.0.0)

MongoDB\BSON\Unserializable::bsonUnserialize — Constructs the object from a BSON array or document

説明

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

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.

注意:

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

パラメータ

data (array)

Properties within the BSON array or document.

戻り値

The return value from this method is ignored.

変更履歴

バージョン 説明
PECL mongodb 2.0.0 Return types previously declared as tentative are now enforced.

例

例1 MongoDB\BSON\Unserializable::bsonUnserialize() example

<?php

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

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

$bson = MongoDB\BSON\Document::fromJSON('{ "foo": "bar" }');

var_dump($bson->toPHP(['root' => 'MyDocument']));

?>

上の例の出力は以下となります。

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

参考

関連キーワード:
MongoDB   document   Unserializable   bsonUnserialize   method   MyDocument   Constructs   mongodb   private   bson   BinaryInterface   abstract   Called   during   unserialization   properties   passed   Remember   check   property   handling   acts   constructor   construct   called
関連する関数・ページ:
class.mongodb-bson-unserializable   class.mongodb-bson-persistable   mongodb-bson-document.get   mongodb-bson-document.offsetget   mongodb-bson-persistable.bsonserialize   mongodb.bson