# La classe MongoDB\BSON\Binary

(mongodb >=1.0.0)

## Introduction

Type BSON pour les données binaires (c.-à-d. tableau d'octets). Les valeurs binaires ont également un sous-type, qui est utilisé pour indiquer quel type de données se trouve dans le tableau d'octets. Les sous-types de zéro à 127 sont prédéfinis ou réservés. Les sous-types de 128-255 sont définis par l'utilisateur.

## Synopsis de la classe

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éthodes */
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 pré-définies

`MongoDB\BSON\Binary::TYPE_GENERIC`
  Données binaires génériques.
`MongoDB\BSON\Binary::TYPE_FUNCTION`
  Fonction.
`MongoDB\BSON\Binary::TYPE_OLD_BINARY`
  Données binaires génériques (déconseillées en faveur de `MongoDB\BSON\Binary::TYPE_GENERIC`).
`MongoDB\BSON\Binary::TYPE_OLD_UUID`
  Identificateur universellement unique (déconseillé en faveur de `MongoDB\BSON\Binary::TYPE_UUID`). Lors de l'utilisation de ce type, les données du binaire doivent être de 16 octets de longueur. Historiquement, d'autres pilotes encodent des valeurs avec ce type en fonction de leurs conventions linguistiques (par exemple, variable endianness), ce qui le rend non-portable. Le pilote PHP n'applique aucune manipulation spéciale pour coder ou décoder des données avec ce type.
`MongoDB\BSON\Binary::TYPE_UUID`
  Identificateur universellement unique. Lors de l'utilisation de ce type, les données du binaire doivent être de 16 octets de longueur et encodées selon » RFC 4122.
`MongoDB\BSON\Binary::TYPE_MD5`
  Hachage MD5. Lors de l'utilisation de ce type, les données du binaire doivent être de 16 octets de longueur.
`MongoDB\BSON\Binary::TYPE_ENCRYPTED`
  Valeur chiffrée. Ce sous type est utilisé pour le chiffrement côté client.
`MongoDB\BSON\Binary::TYPE_COLUMN`
  Donnée de colonne. Ce sous type est utilisé pour les collections de série temporelle.
`MongoDB\BSON\Binary::TYPE_SENSITIVE`
  Données sensibles. Ce sous type est utilisé pour les données sensibles qui devraient être exclues des journaux d'évènements côté serveur si possible.
`MongoDB\BSON\Binary::TYPE_VECTOR`
  Données vectorielles. Ce sous-type est utilisé pour stocker efficacement des données vectorielles pour une utilisation avec la recherche vectorielle de MongoDB.
`MongoDB\BSON\Binary::TYPE_USER_DEFINED`
  Type défini par l'utilisateur. Alors que les types entre 0 et 127 sont prédéfinis ou réservés, les types entre 128 et 255 sont définis par l'utilisateur et peuvent être utilisés pour n'importe quoi.

## Historique

Version | Description
--- | ---
PECL mongodb 2.2.0 | Ajout de `MongoDB\BSON\Binary::TYPE_VECTOR`, ainsi que des fonctions MongoDB\BSON\Binary::fromVector(), MongoDB\BSON\Binary::getVectorType() et MongoDB\BSON\Binary::toArray().
PECL mongodb 2.0.0 | Cette classe n’implémente plus l'interface Serializable.
PECL mongodb 1.17.0 | Ajout de `MongoDB\BSON\Binary::TYPE_SENSITIVE`.
PECL mongodb 1.12.0 | Implémente Stringable pour PHP 8.0+. Ajout de `MongoDB\BSON\Binary::TYPE_COLUMN`.
PECL mongodb 1.7.0 | Ajout de `MongoDB\BSON\Binary::TYPE_ENCRYPTED`.
PECL mongodb 1.3.0 | Implémente MongoDB\BSON\BinaryInterface.
PECL mongodb 1.2.0 | Implémente Serializable et JsonSerializable.

## Sommaire

- MongoDB\BSON\Binary::__construct — Construit un nouveau binaire
- MongoDB\BSON\Binary::fromVector — Crée un nouveau binaire avec le sous-type MongoDB\BSON\Binary::SUBTYPE_VECTOR à partir du tableau et du type de vecteur donnés
- MongoDB\BSON\Binary::getData — Retourne les données de Binary
- MongoDB\BSON\Binary::getType — Retourne le type de Binary
- MongoDB\BSON\Binary::getVectorType — Renvoie le type de données pour un binaire avec le sous-type vecteur
- MongoDB\BSON\Binary::jsonSerialize — Retourne une représentation qui peut être convertie en JSON
- MongoDB\BSON\Binary::toArray — Renvoie le vecteur sous forme de tableau pour un binaire avec le sous-type MongoDB\BSON\Binary::SUBTYPE_VECTOR
- MongoDB\BSON\Binary::__toString — Retourne les données de Binary

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