<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/mongodb.bson.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ru',
  ),
  'this' => 
  array (
    0 => 'class.mongodb-bson-binary.php',
    1 => 'MongoDB\\BSON\\Binary',
    2 => 'Класс MongoDB\\BSON\\Binary',
  ),
  'up' => 
  array (
    0 => 'mongodb.bson.php',
    1 => 'MongoDB\\BSON',
  ),
  'prev' => 
  array (
    0 => 'mongodb-bson-iterator.valid.php',
    1 => 'MongoDB\\BSON\\Iterator::valid',
  ),
  'next' => 
  array (
    0 => 'mongodb-bson-binary.construct.php',
    1 => 'MongoDB\\BSON\\Binary::__construct',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ru',
    'path' => 'reference/mongodb/bson/binary.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/class.mongodb-bson-binary.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="class.mongodb-bson-binary" class="reference">

 <h1 class="title">Класс MongoDB\BSON\Binary</h1>
 

 <div class="partintro"><p class="verinfo">(mongodb &gt;=1.0.0)</p>

  
  <div class="section" id="mongodb-bson-binary.intro">
   <h2 class="title">Введение</h2>
   <p class="para">
    Класс представляет и обрабатывает типы двоичных данных в виде массива байтов для хранения BSON-документа.
    Бинарные значения хранят подтипы — идентификаторы, которые указывают тип данных в массиве байтов.
    Подтипы от 0 до 127 предопределили или зарезервировали.
    Подтипы в диапазоне 128-255 задаются пользователем.
   </p>
  </div>
  

  <div class="section" id="mongodb-bson-binary.synopsis">
   <h2 class="title">Обзор класса</h2>

   
   <div class="classsynopsis">
    <span class="ooclass"><strong class="classname"></strong></span>

    
    <div class="classsynopsisinfo">
     <span class="modifier">final</span>
     <span class="ooclass">
      <span class="modifier">class</span> <strong class="classname">MongoDB\BSON\Binary</strong>
     </span>

     <span class="oointerface"><span class="modifier">implements</span> 
       <a href="class.mongodb-bson-binaryinterface.php" class="interfacename">MongoDB\BSON\BinaryInterface</a></span><span class="oointerface">,  <a href="class.mongodb-bson-type.php" class="interfacename">MongoDB\BSON\Type</a></span><span class="oointerface">,  <a href="class.jsonserializable.php" class="interfacename">JsonSerializable</a></span><span class="oointerface">,  <a href="class.stringable.php" class="interfacename">Stringable</a></span> {</div>
    
    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Константы */</div>
    <div class="fieldsynopsis">
     <span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-generic"><var class="varname">TYPE_GENERIC</var></a></var><span class="initializer"> = 0</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-function"><var class="varname">TYPE_FUNCTION</var></a></var><span class="initializer"> = 1</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-old-binary"><var class="varname">TYPE_OLD_BINARY</var></a></var><span class="initializer"> = 2</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-old-uuid"><var class="varname">TYPE_OLD_UUID</var></a></var><span class="initializer"> = 3</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-uuid"><var class="varname">TYPE_UUID</var></a></var><span class="initializer"> = 4</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-md5"><var class="varname">TYPE_MD5</var></a></var><span class="initializer"> = 5</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-encrypted"><var class="varname">TYPE_ENCRYPTED</var></a></var><span class="initializer"> = 6</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-column"><var class="varname">TYPE_COLUMN</var></a></var><span class="initializer"> = 7</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-sensitive"><var class="varname">TYPE_SENSITIVE</var></a></var><span class="initializer"> = 8</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-vector"><var class="varname">TYPE_VECTOR</var></a></var><span class="initializer"> = 9</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-user-defined"><var class="varname">TYPE_USER_DEFINED</var></a></var><span class="initializer"> = 128</span>;</div>


    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Методы */</div>
    <div class="methodsynopsis dc-description">
   <span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-bson-binary.construct.php" class="methodname">__construct</a></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$data</code></span>, <span class="methodparam"><span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$type</code><span class="initializer"> = MongoDB\BSON\Binary::TYPE_GENERIC</span></span>)</div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="modifier">static</span> <span class="methodname"><a href="mongodb-bson-binary.fromvector.php" class="methodname">fromVector</a></span>(<span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$vector</code></span>, <span class="methodparam"><span class="type"><a href="enum.mongodb-bson-vectortype.php" class="type MongoDB\BSON\VectorType">MongoDB\BSON\VectorType</a></span> <code class="parameter">$vectorType</code></span>): <span class="type"><a href="class.mongodb-bson-binary.php" class="type MongoDB\BSON\Binary">MongoDB\BSON\Binary</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-bson-binary.getdata.php" class="methodname">getData</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-bson-binary.gettype.php" class="methodname">getType</a></span>(): <span class="type"><a href="language.types.integer.php" class="type int">int</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-bson-binary.getvectortype.php" class="methodname">getVectorType</a></span>(): <span class="type"><a href="enum.mongodb-bson-vectortype.php" class="type MongoDB\BSON\VectorType">MongoDB\BSON\VectorType</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-bson-binary.jsonserialize.php" class="methodname">jsonSerialize</a></span>(): <span class="type"><a href="language.types.mixed.php" class="type mixed">mixed</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-bson-binary.toarray.php" class="methodname">toArray</a></span>(): <span class="type"><a href="language.types.array.php" class="type array">array</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">final</span> <span class="modifier">public</span> <span class="methodname"><a href="mongodb-bson-binary.tostring.php" class="methodname">__toString</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>

   }</div>
   

  </div>

  
  <div class="section" id="mongodb-bson-binary.constants">
   <h2 class="title">Предопределённые константы</h2>
   <dl>

    
     <dt id="mongodb-bson-binary.constants.type-generic"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-generic">MongoDB\BSON\Binary::TYPE_GENERIC</a></code></strong></dt>
     <dd>
      <p class="para">Бинарные данные общего подтипа.</p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-function"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-function">MongoDB\BSON\Binary::TYPE_FUNCTION</a></code></strong></dt>
     <dd>
      <p class="para">Функция.</p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-old-binary"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-old-binary">MongoDB\BSON\Binary::TYPE_OLD_BINARY</a></code></strong></dt>
     <dd>
      <p class="para">Бинарные данные общего подтипа (константу объявили устаревшей в пользу
       <strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-generic">MongoDB\BSON\Binary::TYPE_GENERIC</a></code></strong>).</p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-old-uuid"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-old-uuid">MongoDB\BSON\Binary::TYPE_OLD_UUID</a></code></strong></dt>
     <dd>
      <p class="para">
       Универсальный уникальный идентификатор (константу объявили устаревшей в пользу
       <strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-uuid">MongoDB\BSON\Binary::TYPE_UUID</a></code></strong>). Обязательное требование
       к двоичным данным этого типа в объекте Binary — длина составляет 16 байтов.
      </p>
      <p class="para">
       Исторически другие драйверы кодировали значения этого типа
       по правилам, которые соответствовали внутренним языковым соглашениям
       (например, с разным порядком байтов), что делает
       тип непереносимым. PHP-модуль не применяет обработок для кодирования
       или декодирования данных этого типа.
      </p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-uuid"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-uuid">MongoDB\BSON\Binary::TYPE_UUID</a></code></strong></dt>
     <dd>
      <p class="para">
       Универсальный уникальный идентификатор. Обязательное требование
       к двоичным данным этого типа в объекте Binary — длина составляет 16 байтов
       и данные закодировали по правилам стандарта <a href="https://datatracker.ietf.org/doc/html/rfc4122" class="link external">&raquo;&nbsp;RFC 4122</a>.
      </p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-md5"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-md5">MongoDB\BSON\Binary::TYPE_MD5</a></code></strong></dt>
     <dd>
      <p class="para">Хеш в формате MD5. Обязательное требование
       к двоичным данным этого типа в объекте Binary — длина составляет 16 байтов.</p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-encrypted"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-encrypted">MongoDB\BSON\Binary::TYPE_ENCRYPTED</a></code></strong></dt>
     <dd>
      <p class="para">Зашифрованное значение. Подтип для шифрования на стороне клиента.</p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-column"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-column">MongoDB\BSON\Binary::TYPE_COLUMN</a></code></strong></dt>
     <dd>
      <p class="para">
       Данные столбца. Подтип для коллекций временны́х рядов.
      </p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-sensitive"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-sensitive">MongoDB\BSON\Binary::TYPE_SENSITIVE</a></code></strong></dt>
     <dd>
      <p class="para">
       Конфиденциальные данные. Подтип для конфиденциальных данных,
       которые по возможности исключают из логирования на стороне сервера.
      </p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-vector"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-vector">MongoDB\BSON\Binary::TYPE_VECTOR</a></code></strong></dt>
     <dd>
      <p class="para">
       Векторные данные. Подтип оптимизирует хранение векторов
       и ускоряет векторный поиск в MongoDB.
      </p>
     </dd>
    

    
     <dt id="mongodb-bson-binary.constants.type-user-defined"><strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-user-defined">MongoDB\BSON\Binary::TYPE_USER_DEFINED</a></code></strong></dt>
     <dd>
      <p class="para">
       Пользовательский тип. Типы с 0 по 127 предопределили
       или зарезервировали, а типы со 128 по 255 предусмотрели
       для определения в пользовательских целях.
      </p>
     </dd>
    

   </dl>
  </div>
  

  <div class="section">
   <h2 class="title">Список изменений</h2>
   <p class="para">
    <table class="doctable informaltable">
     
      <thead>
       <tr>
        <th>Версия</th>
        <th>Описание</th>
       </tr>

      </thead>

      <tbody class="tbody">
       <tr>
        <td>PECL-модуль mongodb 2.2.0</td>
        <td>
         Добавили константу <strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-vector">MongoDB\BSON\Binary::TYPE_VECTOR</a></code></strong>,
         а также функции <span class="methodname"><a href="mongodb-bson-binary.fromvector.php" class="methodname">MongoDB\BSON\Binary::fromVector()</a></span>,
         <span class="methodname"><a href="mongodb-bson-binary.getvectortype.php" class="methodname">MongoDB\BSON\Binary::getVectorType()</a></span>
         и <span class="methodname"><a href="mongodb-bson-binary.toarray.php" class="methodname">MongoDB\BSON\Binary::toArray()</a></span>.
        </td>
       </tr>

       
       <tr>
        <td>PECL-модуль mongodb 2.0.0</td>
        <td>
         <p class="para">
          Класс больше не реализует интерфейс
          <span class="interfacename"><a href="class.serializable.php" class="interfacename">Serializable</a></span>.
         </p>
        </td>
       </tr>


       <tr>
        <td>PECL-модуль mongodb 1.17.0</td>
        <td>
         Добавили тип <strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-sensitive">MongoDB\BSON\Binary::TYPE_SENSITIVE</a></code></strong>.
        </td>
       </tr>

       <tr>
        <td>PECL-модуль mongodb 1.12.0</td>
        <td>
         <p class="para">
          Реализовали интерфейс <span class="interfacename"><a href="class.stringable.php" class="interfacename">Stringable</a></span> для PHP 8.0+.
         </p>
         <p class="para">
          Добавили тип <strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-column">MongoDB\BSON\Binary::TYPE_COLUMN</a></code></strong>.
         </p>
        </td>
       </tr>

       <tr>
        <td>PECL-модуль mongodb 1.7.0</td>
        <td>
         Добавили тип <strong><code><a href="class.mongodb-bson-binary.php#mongodb-bson-binary.constants.type-encrypted">MongoDB\BSON\Binary::TYPE_ENCRYPTED</a></code></strong>.
        </td>
       </tr>

       <tr>
        <td>PECL-модуль mongodb 1.3.0</td>
        <td>
         Реализовали интерфейс <span class="interfacename"><a href="class.mongodb-bson-binaryinterface.php" class="interfacename">MongoDB\BSON\BinaryInterface</a></span>.
        </td>
       </tr>

       <tr>
        <td>PECL-модуль mongodb 1.2.0</td>
        <td>
         Реализовали интерфейсы <span class="interfacename"><a href="class.serializable.php" class="interfacename">Serializable</a></span>
         и <span class="interfacename"><a href="class.jsonserializable.php" class="interfacename">JsonSerializable</a></span>.
        </td>
       </tr>

      </tbody>
     
    </table>

   </p>
  </div>

 </div>

 























































<h2>Содержание</h2><ul class="chunklist chunklist_reference"><li><a href="mongodb-bson-binary.construct.php">MongoDB\BSON\Binary::__construct</a> — Создаёт новый объект с типом данных Binary</li><li><a href="mongodb-bson-binary.fromvector.php">MongoDB\BSON\Binary::fromVector</a> — Создаёт объект Binary с подтипом MongoDB\BSON\Binary::SUBTYPE_VECTOR из массива векторных данных и типа вектора</li><li><a href="mongodb-bson-binary.getdata.php">MongoDB\BSON\Binary::getData</a> — Возвращает данные, которые содержит объект типа данных Binary</li><li><a href="mongodb-bson-binary.gettype.php">MongoDB\BSON\Binary::getType</a> — Возвращает тип данных, которые содержит объект типа данных Binary</li><li><a href="mongodb-bson-binary.getvectortype.php">MongoDB\BSON\Binary::getVectorType</a> — Возвращает тип данных объекта Binary с подтипом вектора</li><li><a href="mongodb-bson-binary.jsonserialize.php">MongoDB\BSON\Binary::jsonSerialize</a> — Возвращает преобразуемое в JSON-формат представление</li><li><a href="mongodb-bson-binary.toarray.php">MongoDB\BSON\Binary::toArray</a> — Возвращает вектор Binary с подтипом MongoDB\BSON\Binary::SUBTYPE_VECTOR в виде массива</li><li><a href="mongodb-bson-binary.tostring.php">MongoDB\BSON\Binary::__toString</a> — Возвращает данные, которые содержит объект типа данных Binary</li></ul>
</div>
<?php manual_footer($setup); ?>