(mongodb >=1.0.0)
MongoDB\BSON\Unserializable::bsonUnserialize — 从 BSON 数组或文档构造对象
在从 BSON 反序列化对象期间调用。BSON 数组或文档的属性将作为 array 传递给该方法。
请记住,在处理来自 BSON 文档的数据时,请检查 _id 属性。
注意: 此方法充当对象的 构造函数。在此方法之后,将不会调用 __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\Document::fromJSON('{ "foo": "bar" }');
var_dump($bson->toPHP(['root' => 'MyDocument']));
?>
以上示例将输出
object(MyDocument)#1 (1) { ["data":"MyDocument":private]=> array(1) { ["foo"]=> string(3) "bar" } }