<?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 => 'ja',
  ),
  'this' => 
  array (
    0 => 'function.mongodb.bson-tojson.php',
    1 => 'MongoDB\\BSON\\toJSON',
    2 => 'Returns the Legacy Extended JSON representation of a BSON value',
  ),
  'up' => 
  array (
    0 => 'ref.bson.functions.php',
    1 => '関数',
  ),
  'prev' => 
  array (
    0 => 'function.mongodb.bson-tocanonicalextendedjson.php',
    1 => 'MongoDB\\BSON\\toCanonicalExtendedJSON',
  ),
  'next' => 
  array (
    0 => 'function.mongodb.bson-tophp.php',
    1 => 'MongoDB\\BSON\\toPHP',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'en',
    'path' => 'reference/mongodb/functions/bson/tojson.xml',
  ),
  'history' => 
  array (
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="function.mongodb.bson-tojson" class="refentry">
 <div class="refnamediv">
  <h1 class="refname">MongoDB\BSON\toJSON</h1>
  <p class="verinfo">(mongodb &gt;=1.0.0)</p><p class="refpurpose"><span class="refname">MongoDB\BSON\toJSON</span> &mdash; <span class="dc-title">Returns the Legacy Extended JSON representation of a BSON value</span></p>

 </div>

 <div id="function.mongodb.bson-tojson-refsynopsisdiv">
  <div class="warning"><strong class="warning">警告</strong>
   <p class="simpara">
    This function has been <em>DEPRECATED</em> as of extension
    version 1.20.0 and was removed in 2.0. Applications should use
    <span class="methodname"><a href="mongodb-bson-document.tocanonicalextendedjson.php" class="methodname">MongoDB\BSON\Document::toCanonicalExtendedJSON()</a></span> or
    <span class="methodname"><a href="mongodb-bson-document.torelaxedextendedjson.php" class="methodname">MongoDB\BSON\Document::toRelaxedExtendedJSON()</a></span>
    instead.
   </p>
  </div>
 </div>

 <div class="refsect1 description" id="refsect1-function.mongodb.bson-tojson-description">
  <h3 class="title">説明</h3>
  <div class="methodsynopsis dc-description">
   <span class="methodname"><strong>MongoDB\BSON\toJSON</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="type"><a href="language.types.string.php" class="type string">string</a></span></div>

  <p class="simpara">
   Converts a BSON string to its
   <a href="https://www.mongodb.com/docs/manual/reference/mongodb-extended-json/" class="link external">&raquo;&nbsp;Legacy Extended JSON</a>
   representation.
  </p>
  <blockquote class="note"><p><strong class="note">注意</strong>: 
   <span class="simpara">
    There exist several JSON formats for representing BSON. This function
    implements the &quot;strict mode&quot; defined in
    <a href="https://www.mongodb.com/docs/manual/reference/mongodb-extended-json/" class="link external">&raquo;&nbsp;MongoDB Extended JSON</a>,
    which has been superseded by the canonical and relaxed formats defined in
    the
    <a href="https://github.com/mongodb/specifications/blob/master/source/extended-json/extended-json.md" class="link external">&raquo;&nbsp;Extended JSON Specification</a>
    and implemented by <span class="function"><a href="function.mongodb.bson-tocanonicalextendedjson.php" class="function">MongoDB\BSON\toCanonicalExtendedJSON()</a></span>
    and <span class="function"><a href="function.mongodb.bson-torelaxedextendedjson.php" class="function">MongoDB\BSON\toRelaxedExtendedJSON()</a></span>, respectively.
   </span>
  </p></blockquote>
  <div class="warning"><strong class="warning">警告</strong>
   <p class="simpara">
    <a href="http://www.json.org/" class="link external">&raquo;&nbsp;JSON</a> does not support
    <a href="language.types.float.php#language.types.float.nan" class="link"><strong><code><a href="math.constants.php#constant.nan">NAN</a></code></strong></a> and
    <a href="function.is-infinite.php" class="link"><strong><code><a href="math.constants.php#constant.inf">INF</a></code></strong></a> and
    MongoDB&#039;s Legacy Extended JSON format does not define an alternative
    representation for these values
    (<a href="https://github.com/mongodb/mongo-c-driver/tree/master/src/libbson" class="link external">&raquo;&nbsp;libbson</a> will output
    <code class="literal">nan</code> and <code class="literal">inf</code> literals, which may not be
    parsed as valid JSON). If you are working with BSON that may contain
    non-finite numbers, please use
    <span class="function"><a href="function.mongodb.bson-tocanonicalextendedjson.php" class="function">MongoDB\BSON\toCanonicalExtendedJSON()</a></span> or
    <span class="function"><a href="function.mongodb.bson-torelaxedextendedjson.php" class="function">MongoDB\BSON\toRelaxedExtendedJSON()</a></span>.
   </p>
  </div>
 </div>


 <div class="refsect1 parameters" id="refsect1-function.mongodb.bson-tojson-parameters">
  <h3 class="title">パラメータ</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>
     <span class="simpara">
      BSON value to be converted.
     </span>
    </dd>
   
  </dl>
 </div>


 <div class="refsect1 returnvalues" id="refsect1-function.mongodb.bson-tojson-returnvalues">
  <h3 class="title">戻り値</h3>
  <p class="simpara">
   The converted JSON value.
  </p>
 </div>


 <div class="refsect1 errors" id="refsect1-function.mongodb.bson-tojson-errors">
  <h3 class="title">エラー / 例外</h3>
  <ul class="simplelist">
   <li>Throws <span class="classname"><a href="class.mongodb-driver-exception-unexpectedvalueexception.php" class="classname">MongoDB\Driver\Exception\UnexpectedValueException</a></span> if the input did not contain exactly one BSON document. Possible reasons include, but are not limited to, invalid BSON, extra data (after reading one BSON document), or an unexpected <a href="https://github.com/mongodb/mongo-c-driver/tree/master/src/libbson" class="link external">&raquo;&nbsp;libbson</a> error.</li>
  </ul>
 </div>


 <div class="refsect1 changelog" id="refsect1-function.mongodb.bson-tojson-changelog">
  <h3 class="title">変更履歴</h3>
  <table class="doctable informaltable">
   
    <thead>
     <tr>
      <th>バージョン</th>
      <th>説明</th>
     </tr>

    </thead>

    <tbody class="tbody">
     
       <tr>
        <td>PECL mongodb 2.0.0</td>
        <td>
         This function was removed.
        </td>
       </tr>


    </tbody>
   
  </table>

 </div>


 <div class="refsect1 examples" id="refsect1-function.mongodb.bson-tojson-examples">
  <h3 class="title">例</h3>
  <div class="example" id="example-1">
   <p><strong>例1 <span class="function"><strong>MongoDB\BSON\toJSON()</strong></span> example</strong></p>
   <div class="example-contents">
<div class="phpcode"><code><span style="color: #000000"><span style="color: #0000BB">&lt;?php<br /><br />$documents </span><span style="color: #007700">= [<br />    [ </span><span style="color: #DD0000">'null' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">null </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'boolean' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">true </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'string' </span><span style="color: #007700">=&gt; </span><span style="color: #DD0000">'foo' </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'int32' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">123 </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'int64' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">4294967295 </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'double' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">1.0</span><span style="color: #007700">, ],<br />    [ </span><span style="color: #DD0000">'nan' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">NAN </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'pos_inf' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">INF </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'neg_inf' </span><span style="color: #007700">=&gt; -</span><span style="color: #0000BB">INF </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'array' </span><span style="color: #007700">=&gt; [ </span><span style="color: #DD0000">'foo'</span><span style="color: #007700">, </span><span style="color: #DD0000">'bar' </span><span style="color: #007700">]],<br />    [ </span><span style="color: #DD0000">'document' </span><span style="color: #007700">=&gt; [ </span><span style="color: #DD0000">'foo' </span><span style="color: #007700">=&gt; </span><span style="color: #DD0000">'bar' </span><span style="color: #007700">]],<br />    [ </span><span style="color: #DD0000">'oid' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\ObjectId</span><span style="color: #007700">(</span><span style="color: #DD0000">'56315a7c6118fd1b920270b1'</span><span style="color: #007700">) ],<br />    [ </span><span style="color: #DD0000">'dec128' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\Decimal128</span><span style="color: #007700">(</span><span style="color: #DD0000">'1234.5678'</span><span style="color: #007700">) ],<br />    [ </span><span style="color: #DD0000">'binary' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\Binary</span><span style="color: #007700">(</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">, </span><span style="color: #0000BB">MongoDB\BSON\Binary</span><span style="color: #007700">::</span><span style="color: #0000BB">TYPE_GENERIC</span><span style="color: #007700">) ],<br />    [ </span><span style="color: #DD0000">'date' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\UTCDateTime</span><span style="color: #007700">(</span><span style="color: #0000BB">1445990400000</span><span style="color: #007700">) ],<br />    [ </span><span style="color: #DD0000">'timestamp' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\Timestamp</span><span style="color: #007700">(</span><span style="color: #0000BB">1234</span><span style="color: #007700">, </span><span style="color: #0000BB">5678</span><span style="color: #007700">) ],<br />    [ </span><span style="color: #DD0000">'regex' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\Regex</span><span style="color: #007700">(</span><span style="color: #DD0000">'pattern'</span><span style="color: #007700">, </span><span style="color: #DD0000">'i'</span><span style="color: #007700">) ],<br />    [ </span><span style="color: #DD0000">'code' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\Javascript</span><span style="color: #007700">(</span><span style="color: #DD0000">'function() { return 1; }'</span><span style="color: #007700">) ],<br />    [ </span><span style="color: #DD0000">'code_ws' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\Javascript</span><span style="color: #007700">(</span><span style="color: #DD0000">'function() { return a; }'</span><span style="color: #007700">, [</span><span style="color: #DD0000">'a' </span><span style="color: #007700">=&gt; </span><span style="color: #0000BB">1</span><span style="color: #007700">]) ],<br />    [ </span><span style="color: #DD0000">'minkey' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\MinKey </span><span style="color: #007700">],<br />    [ </span><span style="color: #DD0000">'maxkey' </span><span style="color: #007700">=&gt; new </span><span style="color: #0000BB">MongoDB\BSON\MaxKey </span><span style="color: #007700">],<br />];<br /><br />foreach (</span><span style="color: #0000BB">$documents </span><span style="color: #007700">as </span><span style="color: #0000BB">$document</span><span style="color: #007700">) {<br />    </span><span style="color: #0000BB">$bson </span><span style="color: #007700">= </span><span style="color: #0000BB">MongoDB\BSON\fromPHP</span><span style="color: #007700">(</span><span style="color: #0000BB">$document</span><span style="color: #007700">);<br />    echo </span><span style="color: #0000BB">MongoDB\BSON\toJSON</span><span style="color: #007700">(</span><span style="color: #0000BB">$bson</span><span style="color: #007700">), </span><span style="color: #DD0000">"\n"</span><span style="color: #007700">;<br />}<br /><br /></span><span style="color: #0000BB">?&gt;</span></span></code></div>
   </div>

   <div class="example-contents"><p>上の例の出力は以下となります。</p></div>
   <div class="example-contents screen">
<div class="examplescode"><pre class="examplescode">{ &quot;null&quot; : null }
{ &quot;boolean&quot; : true }
{ &quot;string&quot; : &quot;foo&quot; }
{ &quot;int32&quot; : 123 }
{ &quot;int64&quot; : 4294967295 }
{ &quot;double&quot; : 1.0 }
{ &quot;nan&quot; : nan }
{ &quot;pos_inf&quot; : inf }
{ &quot;neg_inf&quot; : -inf }
{ &quot;array&quot; : [ &quot;foo&quot;, &quot;bar&quot; ] }
{ &quot;document&quot; : { &quot;foo&quot; : &quot;bar&quot; } }
{ &quot;oid&quot; : { &quot;$oid&quot; : &quot;56315a7c6118fd1b920270b1&quot; } }
{ &quot;dec128&quot; : { &quot;$numberDecimal&quot; : &quot;1234.5678&quot; } }
{ &quot;binary&quot; : { &quot;$binary&quot; : &quot;Zm9v&quot;, &quot;$type&quot; : &quot;00&quot; } }
{ &quot;date&quot; : { &quot;$date&quot; : 1445990400000 } }
{ &quot;timestamp&quot; : { &quot;$timestamp&quot; : { &quot;t&quot; : 5678, &quot;i&quot; : 1234 } } }
{ &quot;regex&quot; : { &quot;$regex&quot; : &quot;pattern&quot;, &quot;$options&quot; : &quot;i&quot; } }
{ &quot;code&quot; : { &quot;$code&quot; : &quot;function() { return 1; }&quot; } }
{ &quot;code_ws&quot; : { &quot;$code&quot; : &quot;function() { return a; }&quot;, &quot;$scope&quot; : { &quot;a&quot; : 1 } } }
{ &quot;minkey&quot; : { &quot;$minKey&quot; : 1 } }
{ &quot;maxkey&quot; : { &quot;$maxKey&quot; : 1 } }</pre>
</div>
   </div>
  </div>
 </div>



 <div class="refsect1 seealso" id="refsect1-function.mongodb.bson-tojson-seealso">
  <h3 class="title">参考</h3>
  <ul class="simplelist">
   <li><span class="function"><a href="function.mongodb.bson-fromjson.php" class="function" rel="rdfs-seeAlso">MongoDB\BSON\fromJSON()</a> - Returns the BSON representation of a JSON value</span></li>
   <li><span class="function"><a href="function.mongodb.bson-tocanonicalextendedjson.php" class="function" rel="rdfs-seeAlso">MongoDB\BSON\toCanonicalExtendedJSON()</a> - Returns the Canonical Extended JSON representation of a BSON value</span></li>
   <li><span class="function"><a href="function.mongodb.bson-torelaxedextendedjson.php" class="function" rel="rdfs-seeAlso">MongoDB\BSON\toRelaxedExtendedJSON()</a> - Returns the Relaxed Extended JSON representation of a BSON value</span></li>
   <li><a href="https://www.mongodb.com/docs/manual/reference/mongodb-extended-json/" class="link external">&raquo;&nbsp;MongoDB Extended JSON</a></li>
   <li><a href="https://www.mongodb.com/docs/manual/reference/bson-types/" class="link external">&raquo;&nbsp;MongoDB BSON</a></li>
  </ul>
 </div>


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