# La clase MongoDB\BSON\Binary

(mongodb >=1.0.0)

## Introducción

Tipo BSON para datos binarios (i.e. array de bytes). Los valores binarios también tienen un subtipo, que se utiliza para indicar qué tipo de datos se encuentra en el array de bytes. Los subtipos de cero a 127 están predefinidos o reservados. Los subtipos de 128-255 son definidos por el usuario.

## Sinopsis de la Clase

final class MongoDB\BSON\Binary implements MongoDB\BSON\BinaryInterface, MongoDB\BSON\Type, JsonSerializable, Stringable {
/* Constantes */
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;
/* Métodos */
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
}

## Constantes predefinidas

`MongoDB\BSON\Binary::TYPE_GENERIC`
  Datos binarios genéricos.
`MongoDB\BSON\Binary::TYPE_FUNCTION`
  Función.
`MongoDB\BSON\Binary::TYPE_OLD_BINARY`
  Datos binarios genéricos (desaconsejados en favor de `MongoDB\BSON\Binary::TYPE_GENERIC`).
`MongoDB\BSON\Binary::TYPE_OLD_UUID`
  Identificador universalmente único (desaconsejado en favor de `MongoDB\BSON\Binary::TYPE_UUID`). Al utilizar este tipo, los datos del binario deben tener una longitud de 16 bytes. Históricamente, otros controladores codifican valores con este tipo según sus convenciones lingüísticas (por ejemplo, variable indianness), lo que lo hace no portable. El controlador PHP no aplica ninguna manipulación especial para codificar o decodificar datos con este tipo.
`MongoDB\BSON\Binary::TYPE_UUID`
  Identificador universalmente único. Al utilizar este tipo, los datos del binario deben tener una longitud de 16 bytes y estar codificados según » RFC 4122.
`MongoDB\BSON\Binary::TYPE_MD5`
  Hash MD5. Al utilizar este tipo, los datos del binario deben tener una longitud de 16 bytes.
`MongoDB\BSON\Binary::TYPE_ENCRYPTED`
  Valor cifrado. Este subtipo se utiliza para el cifrado del lado del cliente.
`MongoDB\BSON\Binary::TYPE_COLUMN`
  Dato de columna. Este subtipo se utiliza para las colecciones de series temporales.
`MongoDB\BSON\Binary::TYPE_SENSITIVE`
  Datos sensibles. Este subtipo se utiliza para los datos sensibles que deberían ser excluidos de los registros de eventos del lado del servidor si es posible.
`MongoDB\BSON\Binary::TYPE_VECTOR`
  Datos de vector. Este subtipo se utiliza para almacenar eficientemente datos de vector para su uso con la búsqueda de vectores de MongoDB.
`MongoDB\BSON\Binary::TYPE_USER_DEFINED`
  Tipo definido por el usuario. Mientras que los tipos entre 0 y 127 están predefinidos o reservados, los tipos entre 128 y 255 son definidos por el usuario y pueden ser utilizados para cualquier cosa.

## Historial de cambios

Versión | Descripción
--- | ---
PECL mongodb 2.2.0 | Adición de `MongoDB\BSON\Binary::TYPE_VECTOR`, así como las funciones MongoDB\BSON\Binary::fromVector(), MongoDB\BSON\Binary::getVectorType() y MongoDB\BSON\Binary::toArray().
PECL mongodb 2.0.0 | Esta clase ya no implementa la interfaz Serializable.
PECL mongodb 1.17.0 | Adición de `MongoDB\BSON\Binary::TYPE_SENSITIVE`.
PECL mongodb 1.12.0 | Implementa Stringable para PHP 8.0+. Adición de `MongoDB\BSON\Binary::TYPE_COLUMN`.
PECL mongodb 1.7.0 | Adición de `MongoDB\BSON\Binary::TYPE_ENCRYPTED`.
PECL mongodb 1.3.0 | Implementa MongoDB\BSON\BinaryInterface.
PECL mongodb 1.2.0 | Implementa Serializable y JsonSerializable.

## Tabla de contenidos

- MongoDB\BSON\Binary::__construct — Construye un nuevo binario
- MongoDB\BSON\Binary::fromVector — Crea un nuevo binario con subtipo MongoDB\BSON\Binary::SUBTYPE_VECTOR a partir del array y tipo de vector dados
- MongoDB\BSON\Binary::getData — Devuelve los datos de Binary
- MongoDB\BSON\Binary::getType — Devuelve el tipo de Binary
- MongoDB\BSON\Binary::getVectorType — Devuelve el tipo de datos para un Binary con el subtipo vector
- MongoDB\BSON\Binary::jsonSerialize — Devuelve una representación que puede ser convertida en JSON
- MongoDB\BSON\Binary::toArray — Devuelve el vector como un array para un Binary con subtipo MongoDB\BSON\Binary::SUBTYPE_VECTOR
- MongoDB\BSON\Binary::__toString — Devuelve los datos de Binary

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