Класс MongoDB\BSON\Binary

(mongodb >=1.0.0)

Введение

Класс представляет и обрабатывает типы двоичных данных в виде массива байтов для хранения BSON-документа. Бинарные значения хранят подтипы — идентификаторы, которые указывают тип данных в массиве байтов. Подтипы от 0 до 127 предопределили или зарезервировали. Подтипы в диапазоне 128-255 задаются пользователем.

Обзор класса

final class MongoDB\BSON\Binary implements MongoDB\BSON\BinaryInterface, MongoDB\BSON\Type, JsonSerializable, Stringable {
/* Константы */
const int TYPE_GENERIC = 0;
const int TYPE_FUNCTION = 1;
const int TYPE_OLD_BINARY = 2;
const int TYPE_OLD_UUID = 3;
const int TYPE_UUID = 4;
const int TYPE_MD5 = 5;
const int TYPE_ENCRYPTED = 6;
const int TYPE_COLUMN = 7;
const int TYPE_SENSITIVE = 8;
const int TYPE_VECTOR = 9;
const int TYPE_USER_DEFINED = 128;
/* Методы */
final public function __construct(string $data, int $type = MongoDB\BSON\Binary::TYPE_GENERIC)
final public static function fromVector(array $vector, MongoDB\BSON\VectorType $vectorType): MongoDB\BSON\Binary
final public function getData(): string
final public function getType(): int
final public function getVectorType(): MongoDB\BSON\VectorType
final public function jsonSerialize(): mixed
final public function toArray(): array
final public function __toString(): string
}

Предопределённые константы

MongoDB\BSON\Binary::TYPE_GENERIC
Бинарные данные общего подтипа.
MongoDB\BSON\Binary::TYPE_FUNCTION
Функция.
MongoDB\BSON\Binary::TYPE_OLD_BINARY
Бинарные данные общего подтипа (константу объявили устаревшей в пользу MongoDB\BSON\Binary::TYPE_GENERIC).
MongoDB\BSON\Binary::TYPE_OLD_UUID
Универсальный уникальный идентификатор (константу объявили устаревшей в пользу MongoDB\BSON\Binary::TYPE_UUID). Обязательное требование к двоичным данным этого типа в объекте Binary — длина составляет 16 байтов. Исторически другие драйверы кодировали значения этого типа по правилам, которые соответствовали внутренним языковым соглашениям (например, с разным порядком байтов), что делает тип непереносимым. PHP-модуль не применяет обработок для кодирования или декодирования данных этого типа.
MongoDB\BSON\Binary::TYPE_UUID
Универсальный уникальный идентификатор. Обязательное требование к двоичным данным этого типа в объекте Binary — длина составляет 16 байтов и данные закодировали по правилам стандарта » RFC 4122.
MongoDB\BSON\Binary::TYPE_MD5
Хеш в формате MD5. Обязательное требование к двоичным данным этого типа в объекте Binary — длина составляет 16 байтов.
MongoDB\BSON\Binary::TYPE_ENCRYPTED
Зашифрованное значение. Подтип для шифрования на стороне клиента.
MongoDB\BSON\Binary::TYPE_COLUMN
Данные столбца. Подтип для коллекций временны́х рядов.
MongoDB\BSON\Binary::TYPE_SENSITIVE
Конфиденциальные данные. Подтип для конфиденциальных данных, которые по возможности исключают из логирования на стороне сервера.
MongoDB\BSON\Binary::TYPE_VECTOR
Векторные данные. Подтип оптимизирует хранение векторов и ускоряет векторный поиск в MongoDB.
MongoDB\BSON\Binary::TYPE_USER_DEFINED
Пользовательский тип. Типы с 0 по 127 предопределили или зарезервировали, а типы со 128 по 255 предусмотрели для определения в пользовательских целях.

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

Версия Описание
PECL-модуль mongodb 2.2.0 Добавили константу MongoDB\BSON\Binary::TYPE_VECTOR, а также функции MongoDB\BSON\Binary::fromVector(), MongoDB\BSON\Binary::getVectorType() и MongoDB\BSON\Binary::toArray().
PECL-модуль mongodb 2.0.0 Класс больше не реализует интерфейс Serializable.
PECL-модуль mongodb 1.17.0 Добавили тип MongoDB\BSON\Binary::TYPE_SENSITIVE.
PECL-модуль mongodb 1.12.0 Реализовали интерфейс Stringable для PHP 8.0+. Добавили тип MongoDB\BSON\Binary::TYPE_COLUMN.
PECL-модуль mongodb 1.7.0 Добавили тип MongoDB\BSON\Binary::TYPE_ENCRYPTED.
PECL-модуль mongodb 1.3.0 Реализовали интерфейс MongoDB\BSON\BinaryInterface.
PECL-модуль mongodb 1.2.0 Реализовали интерфейсы Serializable и JsonSerializable.

Содержание

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top