mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-06-17 21:16:57 +08:00
122 lines
15 KiB
HTML
122 lines
15 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
|
<title>Returns the Canonical Extended JSON representation of a BSON value</title>
|
|
</head>
|
|
<body class="docs"><div id="layout">
|
|
<div id="layout-content"><div id="function.mongodb.bson-tocanonicalextendedjson" class="refentry">
|
|
<div class="refnamediv">
|
|
<h1 class="refname">MongoDB\BSON\toCanonicalExtendedJSON</h1>
|
|
<p class="verinfo">(mongodb >=1.3.0)</p><p class="refpurpose"><span class="refname">MongoDB\BSON\toCanonicalExtendedJSON</span> — <span class="dc-title">Returns the Canonical Extended JSON representation of a BSON value</span></p>
|
|
|
|
</div>
|
|
|
|
<div class="refsect1 description" id="refsect1-function.mongodb.bson-tocanonicalextendedjson-description">
|
|
<h3 class="title">说明</h3>
|
|
<div class="methodsynopsis dc-description">
|
|
<span class="methodname"><strong>MongoDB\BSON\toCanonicalExtendedJSON</strong></span>
|
|
( <span class="methodparam"><span class="type">string</span> <code class="parameter">$bson</code></span>
|
|
) : <span class="type">string</span></div>
|
|
|
|
<p class="para rdfs-comment">
|
|
Converts a BSON string to its
|
|
<a href="https://github.com/mongodb/specifications/blob/master/source/extended-json.rst#canonical-extended-json-example" class="link external">» Canonical Extended JSON</a>
|
|
representation. The canonical format prefers type fidelity at the expense of
|
|
concise output and is most suited for producing output that can be converted
|
|
back to BSON without any loss of type information (e.g. numeric types will
|
|
remain differentiated).
|
|
</p>
|
|
</div>
|
|
|
|
|
|
<div class="refsect1 parameters" id="refsect1-function.mongodb.bson-tocanonicalextendedjson-parameters">
|
|
<h3 class="title">参数</h3>
|
|
<dl>
|
|
|
|
|
|
<dt>
|
|
<code class="parameter">bson</code> (<span class="type"><a href="language.types.string.html" class="type string">string</a></span>)</dt>
|
|
|
|
<dd>
|
|
|
|
<p class="para">
|
|
BSON value to be converted.
|
|
</p>
|
|
</dd>
|
|
|
|
|
|
</dl>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="refsect1 returnvalues" id="refsect1-function.mongodb.bson-tocanonicalextendedjson-returnvalues">
|
|
<h3 class="title">返回值</h3>
|
|
<p class="para">
|
|
The converted JSON value.
|
|
</p>
|
|
</div>
|
|
|
|
|
|
<div class="refsect1 errors" id="refsect1-function.mongodb.bson-tocanonicalextendedjson-errors">
|
|
<h3 class="title">错误/异常</h3>
|
|
<ul class="simplelist">
|
|
<li class="member">Throws <a href="class.mongodb_driver_exception_unexpectedvalueexception.html" class="classname">MongoDB\Driver\Exception\UnexpectedValueException</a> 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/libbson" class="link external">» libbson</a> error.</li>
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
<div class="refsect1 examples" id="refsect1-function.mongodb.bson-tocanonicalextendedjson-examples">
|
|
<h3 class="title">范例</h3>
|
|
<div class="example" id="example-1706">
|
|
<p><strong>Example #1 <span class="function"><strong>MongoDB\BSON\toCanonicalExtendedJSON()</strong></span> example</strong></p>
|
|
<div class="example-contents">
|
|
<div class="phpcode"><pre><span style="color: #000000">
|
|
<span style="color: #0000BB"><?php<br /><br />$documents </span><span style="color: #007700">= [<br /> [ </span><span style="color: #DD0000">'null' </span><span style="color: #007700">=> </span><span style="color: #0000BB">null </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'boolean' </span><span style="color: #007700">=> </span><span style="color: #0000BB">true </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'string' </span><span style="color: #007700">=> </span><span style="color: #DD0000">'foo' </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'int32' </span><span style="color: #007700">=> </span><span style="color: #0000BB">123 </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'int64' </span><span style="color: #007700">=> </span><span style="color: #0000BB">4294967295 </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'double' </span><span style="color: #007700">=> </span><span style="color: #0000BB">1.0</span><span style="color: #007700">, ],<br /> [ </span><span style="color: #DD0000">'nan' </span><span style="color: #007700">=> </span><span style="color: #0000BB">NAN </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'pos_inf' </span><span style="color: #007700">=> </span><span style="color: #0000BB">INF </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'neg_inf' </span><span style="color: #007700">=> -</span><span style="color: #0000BB">INF </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'array' </span><span style="color: #007700">=> [ </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">=> [ </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">'oid' </span><span style="color: #007700">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">Binary</span><span style="color: #007700">(</span><span style="color: #DD0000">'foo'</span><span style="color: #007700">, </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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">=> </span><span style="color: #0000BB">1</span><span style="color: #007700">]) ],<br /> [ </span><span style="color: #DD0000">'minkey' </span><span style="color: #007700">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">MinKey </span><span style="color: #007700">],<br /> [ </span><span style="color: #DD0000">'maxkey' </span><span style="color: #007700">=> new </span><span style="color: #0000BB">MongoDB</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">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</span><span style="color: #007700">\</span><span style="color: #0000BB">BSON</span><span style="color: #007700">\</span><span style="color: #0000BB">toCanonicalExtendedJSON</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">?></span>
|
|
</span>
|
|
</pre></div>
|
|
</div>
|
|
|
|
<div class="example-contents"><p>以上例程会输出:</p></div>
|
|
<div class="example-contents screen">
|
|
<div class="cdata"><pre>
|
|
{ "null" : null }
|
|
{ "boolean" : true }
|
|
{ "string" : "foo" }
|
|
{ "int32" : { "$numberInt" : "123" } }
|
|
{ "int64" : { "$numberLong" : "4294967295"} }
|
|
{ "double" : { "$numberDouble" : "1.0" } }
|
|
{ "nan" : { "$numberDouble" : "NaN" } }
|
|
{ "pos_inf" : { "$numberDouble" : "Infinity" } }
|
|
{ "neg_inf" : { "$numberDouble" : "-Infinity" } }
|
|
{ "array" : [ "foo", "bar" ] }
|
|
{ "document" : { "foo" : "bar" } }
|
|
{ "oid" : { "$oid" : "56315a7c6118fd1b920270b1" } }
|
|
{ "dec128" : { "$numberDecimal" : "1234.5678" } }
|
|
{ "binary" : { "$binary" : { "base64": "Zm9v", "subType" : "00" } } }
|
|
{ "date" : { "$date" : { "$numberLong" : "1445990400000" } } }
|
|
{ "timestamp" : { "$timestamp" : { "t" : 5678, "i" : 1234 } } }
|
|
{ "regex" : { "$regularExpression" : { "pattern" : "pattern", "options" : "i" } } }
|
|
{ "code" : { "$code" : "function() { return 1; }" } }
|
|
{ "code_ws" : { "$code" : "function() { return a; }", "$scope" : { "a" : { "$numberInt" : "1" } } } }
|
|
{ "minkey" : { "$minKey" : 1 } }
|
|
{ "maxkey" : { "$maxKey" : 1 } }
|
|
</pre></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="refsect1 seealso" id="refsect1-function.mongodb.bson-tocanonicalextendedjson-seealso">
|
|
<h3 class="title">参见</h3>
|
|
<ul class="simplelist">
|
|
<li class="member"><span class="function"><a href="mongodb.bson_fromjson.html" class="function" rel="rdfs-seeAlso">MongoDB\BSON\fromJSON()</a> - Returns the BSON representation of a JSON value</span></li>
|
|
<li class="member"><span class="function"><a href="mongodb.bson_torelaxedextendedjson.html" class="function" rel="rdfs-seeAlso">MongoDB\BSON\toRelaxedExtendedJSON()</a> - Returns the Relaxed Extended JSON representation of a BSON value</span></li>
|
|
<li class="member"><a href="https://github.com/mongodb/specifications/blob/master/source/extended-json.rst" class="link external">» Extended JSON Specification</a></li>
|
|
<li class="member"><a href="https://docs.mongodb.com/manual/reference/bson-types/" class="link external">» MongoDB BSON</a></li>
|
|
</ul>
|
|
</div>
|
|
|
|
|
|
</div></div></div></body></html> |