<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/ref.bson.functions.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'pt_BR',
  ),
  'this' => 
  array (
    0 => 'function.mongodb.bson-tophp.php',
    1 => 'MongoDB\\BSON\\toPHP',
    2 => 'Retorna a representa&ccedil;&atilde;o PHP de um valor BSON',
  ),
  'up' => 
  array (
    0 => 'ref.bson.functions.php',
    1 => 'Fun&ccedil;&otilde;es',
  ),
  'prev' => 
  array (
    0 => 'function.mongodb.bson-tojson.php',
    1 => 'MongoDB\\BSON\\toJSON',
  ),
  'next' => 
  array (
    0 => 'function.mongodb.bson-torelaxedextendedjson.php',
    1 => 'MongoDB\\BSON\\toRelaxedExtendedJSON',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'pt_BR',
    'path' => 'reference/mongodb/functions/bson/tophp.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.mongodb.bson-tophp" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">MongoDB\BSON\toPHP</h1>
  <p class="verinfo">(mongodb &gt;=1.0.0)</p><p class="refpurpose"><span class="refname">MongoDB\BSON\toPHP</span> &mdash; <span class="dc-title">Retorna a representação PHP de um valor BSON</span></p>

 </div>

 <div id="function.mongodb.bson-tophp-refsynopsisdiv">
  <div class="warning"><strong class="warning">Aviso</strong>
   <p class="para">
    Esta função foi <em>DESCONTINUADA</em> a partir da versão
    1.20.0 da extensão, e foi removida na 2.0. As aplicações devem usar
    <span class="methodname"><a href="mongodb-bson-document.tophp.php" class="methodname">MongoDB\BSON\Document::toPHP()</a></span> em seu lugar.
   </p>
  </div>
 </div>

 <div class="refsect1 description" id="refsect1-function.mongodb.bson-tophp-description">
  <h3 class="title">Descrição</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>MongoDB\BSON\toPHP</strong></span>(<span class="methodparam"><span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$bson</code></span>, <span class="methodparam"><span class="type"><a href="language.types.array.php" class="type array">array</a></span> <code class="parameter">$typeMap</code><span class="initializer"> = array()</span></span>): <span class="type"><span class="type"><a href="language.types.array.php" class="type array">array</a></span>|<span class="type"><a href="language.types.object.php" class="type object">object</a></span></span></div>

  <p class="para rdfs-comment">
   Desserializa um documento BSON (ou seja, string binária) para sua representação PHP.
   O parâmetro <code class="parameter">typeMap</code> pode ser usado para controlar os tipos
   PHP usados ​​para converter arrays e documentos BSON (raiz e incorporados).
  </p>
  
   <div class="warning"><strong class="warning">Aviso</strong>
    <p class="simpara">
     Os documentos BSON tecnicamente podem conter chaves duplicadas porque os documentos são
     armazenados como uma lista de pares chave-valor; no entanto, as aplicações devem evitar
     a geração de documentos com chaves duplicadas, pois o comportamento do servidor e do driver
     pode ser indefinido. Como os objetos e arrays do PHP não podem ter chaves duplicadas,
     os dados também podem ser perdidos ao decodificar um documento BSON com chaves duplicadas.
    </p>
   </div>

 </div>


 <div class="refsect1 parameters" id="refsect1-function.mongodb.bson-tophp-parameters">
  <h3 class="title">Parâmetros</h3>
  <dl>
   
    <dt><code class="parameter">bson</code> (<span class="type"><a href="language.types.string.php" class="type string">string</a></span>)</dt>
    <dd>
     <p class="para">
      Valor BSON a ser desserializado.
     </p>
    </dd>
   
   
   
    <dt><code class="parameter">typeMap</code> (<span class="type"><a href="language.types.array.php" class="type array">array</a></span>)</dt>
    <dd>
     <p class="para">
      <a href="mongodb.persistence.php#mongodb.persistence.typemaps" class="link">Configuração de mapeamento de tipos</a>.
     </p>
    </dd>
   

  </dl>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.mongodb.bson-tophp-returnvalues">
  <h3 class="title">Valor Retornado</h3>
  <p class="para">
   O valor PHP desserializado.
  </p>
 </div>


 <div class="refsect1 errors" id="refsect1-function.mongodb.bson-tophp-errors">
  <h3 class="title">Erros/Exceções</h3>
  <ul class="simplelist">
   <li>
    Lança uma
    <span class="classname"><a href="class.mongodb-driver-exception-invalidargumentexception.php" class="classname">MongoDB\Driver\Exception\InvalidArgumentException</a></span> se
    uma classe no mapa de tipos não puder ser instanciada ou não implementar
    <span class="interfacename"><a href="class.mongodb-bson-unserializable.php" class="interfacename">MongoDB\BSON\Unserializable</a></span>.
   </li>
   <li>Lança uma exceção <span class="classname"><a href="class.mongodb-driver-exception-unexpectedvalueexception.php" class="classname">MongoDB\Driver\Exception\UnexpectedValueException</a></span> se a entrada não contiver exatamente um documento BSON. Os possíveis motivos incluem, mas não estão limitados a, BSON inválido, dados extras (depois de ler um documento BSON) ou um erro inesperado da <a href="https://github.com/mongodb/mongo-c-driver/tree/master/src/libbson" class="link external">&raquo;&nbsp;libbson</a>.</li>
  </ul>
 </div>


 <div class="refsect1 changelog" id="refsect1-function.mongodb.bson-tophp-changelog">
  <h3 class="title">Registro de Alterações</h3>
  <p class="para">
   <table class="doctable informaltable">
    
     <thead>
      <tr>
       <th>Versão</th>
       <th>Descrição</th>
      </tr>

     </thead>

     <tbody class="tbody">
      
       <tr>
        <td>PECL mongodb 2.0.0</td>
        <td>
         Esta função foi removida.
        </td>
       </tr>


      <tr>
       <td>PECL mongodb 1.4.0</td>
       <td>
        <p class="para">
         Se a entrada contiver um tipo BSON obsoleto e sem suporte, a
         extensão não registrará mais um aviso no registro de depuração, mas criará
         um objeto que representa esse tipo.
        </p>
       </td>
      </tr>

      <tr>
       <td>PECL mongodb 1.3.2</td>
       <td>
        <p class="para">
         <span class="classname"><a href="class.mongodb-driver-exception-unexpectedvalueexception.php" class="classname">MongoDB\Driver\Exception\UnexpectedValueException</a></span>
         não será mais lançada se a entrada contiver um tipo BSON obsoleto e
         sem suporte. Esses tipos serão ignorados (como eram nas versões anteriores
         a 1.3.0), embora a extensão agora grave um alerta no registro de depuração
         (consulte: <a href="mongodb.configuration.php#ini.mongodb.debug" class="link">mongodb.debug</a>).
        </p>
       </td>
      </tr>

      <tr>
       <td>PECL mongodb 1.3.0</td>
       <td>
        <p class="para">
         <span class="classname"><a href="class.mongodb-driver-exception-unexpectedvalueexception.php" class="classname">MongoDB\Driver\Exception\UnexpectedValueException</a></span>
         será lançada se a entrada contiver um tipo BSON obsoleto e não suportado.
         Anteriormente, esses tipos eram ignorados.
        </p>
       </td>
      </tr>

     </tbody>
    
   </table>

  </p>
 </div>


 <div class="refsect1 examples" id="refsect1-function.mongodb.bson-tophp-examples">
  <h3 class="title">Exemplos</h3>
  <div class="example" id="example-1">
   <p><strong>Exemplo #1 Exemplo de <span class="function"><strong>MongoDB\BSON\toPHP()</strong></span></strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br />$bson </span><span style="color: #007700">= </span><span style="color: #0000BB">hex2bin</span><span style="color: #007700">(</span><span style="color: #DD0000">'0e00000010666f6f000100000000'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$value </span><span style="color: #007700">= </span><span style="color: #0000BB">MongoDB\BSON\toPHP</span><span style="color: #007700">(</span><span style="color: #0000BB">$bson</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">var_dump</span><span style="color: #007700">(</span><span style="color: #0000BB">$value</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

   <div class="example-contents"><p>O exemplo acima produzirá:</p></div>
   <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">object(stdClass)#1 (1) {
  [&quot;foo&quot;]=&gt;
  int(1)
}</pre>
</div>
   </div>
  </div>
 </div>



 <div class="refsect1 seealso" id="refsect1-function.mongodb.bson-tophp-seealso">
  <h3 class="title">Veja Também</h3>
  <ul class="simplelist">
   <li><span class="methodname"><a href="mongodb-bson-document.tophp.php" class="methodname" rel="rdfs-seeAlso">MongoDB\BSON\Document::toPHP()</a> - Retorna a representa&ccedil;&atilde;o PHP do documento BSON</span></li>
   <li><span class="function"><a href="function.mongodb.bson-fromphp.php" class="function" rel="rdfs-seeAlso">MongoDB\BSON\fromPHP()</a> - Retorna a representa&ccedil;&atilde;o BSON de um valor PHP</span></li>
   <li><a href="https://www.mongodb.com/docs/manual/reference/bson-types/" class="link external">&raquo;&nbsp;BSON do MongoDB</a></li>
   <li><a href="mongodb.persistence.php" class="xref">Dados Persistentes</a></li>
  </ul>
 </div>


</div><?php manual_footer($setup); ?>