Предоставляет массив или документ для сериализации в формате BSON

# MongoDB\BSON\Persistable::bsonSerialize

(mongodb >=1.0.0)

MongoDB\BSON\Persistable::bsonSerialize — Предоставляет массив или документ для сериализации в формате BSON

### Описание

abstract public function MongoDB\BSON\Persistable::bsonSerialize(): array|stdClass|MongoDB\BSON\Document

Вызывается при сериализации объекта в BSON. Метод должен возвращать массив (array), stdClass или MongoDB\BSON\Document.

Возвращаемое значение всегда будет сериализовано в виде BSON-документа. Сериализованный документ будет включать поле, которое содержит имя класса объекта. По этой причине в этом методе невозможно вернуть экземпляр класса MongoDB\BSON\PackedArray.

Пользователям рекомендуется включать свойство _id (например, объект класса MongoDB\BSON\ObjectId, который инициализировали в конструкторе) при возврате данных для корневого BSON-документа. В отсутствие свойства _id модуль будет генерировать объект класса MongoDB\BSON\ObjectId для операций вставки, а сервер для операций обновления или вставки.

### Список параметров

Сигнатура функции не содержит параметров.

### Возвращаемые значения

Метод возвращает массив (array), объект класса stdClass или MongoDB\BSON\Document, который должен быть сериализован как BSON-документ.

### Список изменений

Версия | Описание
--- | ---
PECL-модуль mongodb 2.0.0 | Типы значений возврата, которые для методов интерфейса прежде объявили предварительными, стали обязательными.
PECL mongodb 1.17.0 | Теперь метод может также возвращать экземпляры классов MongoDB\BSON\Document в дополнение к массиву (array) и объекту класса stdClass.

### Смотрите также

- MongoDB\BSON\Serializable::bsonSerialize() - Сериализует данные как BSON-массив или BSON-документ
- MongoDB\BSON\Unserializable::bsonUnserialize() - Создаёт объект из BSON-массива или BSON-документа
- MongoDB\BSON\Persistable
- Сохранение данных

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open