(mongodb >=1.0.0)
MongoDB\BSON\Unserializable::bsonUnserialize — Создаёт объект из массива BSON или документа
Вызывается во время десериализации объекта из BSON. Свойства массива BSON или документа будут переданы в метод в виде массива (array).
Не забудьте проверить свойство _id при обработке данных из документа BSON.
Замечание: Данный метод служит в качестве конструктора объекта Метод __construct() не будет вызываться после этого метода.
data
(array)Свойства в массиве BSON или в документе.
Возвращаемое значение этого метода игнорируется.
Пример #1 Пример использования MongoDB\BSON\Unserializable::bsonUnserialize()
<?php
class MyDocument implements MongoDB\BSON\Unserializable
{
private $data = [];
function bsonUnserialize(array $data): void
{
$this->data = $data;
}
}
$bson = MongoDB\BSON\fromJSON('{ "foo": "bar" }');
$value = MongoDB\BSON\toPHP($bson, ['root' => 'MyDocument']);
var_dump($value);
?>
Результат выполнения приведённого примера:
object(MyDocument)#1 (1) { ["data":"MyDocument":private]=> array(1) { ["foo"]=> string(3) "bar" } }