MongoDB\BSON\toRelaxedExtendedJSON

(mongodb >=1.3.0)

MongoDB\BSON\toRelaxedExtendedJSONReturns the Relaxed Extended JSON representation of a BSON value

警告

This function has been DEPRECATED as of extension version 1.20.0 and will be removed in 2.0. Applications should use MongoDB\BSON\Document::toRelaxedExtendedJSON() instead.

说明

MongoDB\BSON\toRelaxedExtendedJSON(string $bson): string

Converts a BSON string to its » Relaxed Extended JSON representation. The relaxed format prefers use of JSON type primitives at the expense of type fidelity and is most suited for producing output that can be easily consumed by web APIs and humans.

参数

bson (string)

BSON value to be converted.

返回值

The converted JSON value.

错误/异常

示例

示例 #1 MongoDB\BSON\toRelaxedExtendedJSON() example

<?php

$documents
= [
[
'null' => null ],
[
'boolean' => true ],
[
'string' => 'foo' ],
[
'int32' => 123 ],
[
'int64' => 4294967295 ],
[
'double' => 1.0, ],
[
'nan' => NAN ],
[
'pos_inf' => INF ],
[
'neg_inf' => -INF ],
[
'array' => [ 'foo', 'bar' ]],
[
'document' => [ 'foo' => 'bar' ]],
[
'oid' => new MongoDB\BSON\ObjectId('56315a7c6118fd1b920270b1') ],
[
'dec128' => new MongoDB\BSON\Decimal128('1234.5678') ],
[
'binary' => new MongoDB\BSON\Binary('foo', MongoDB\BSON\Binary::TYPE_GENERIC) ],
[
'date' => new MongoDB\BSON\UTCDateTime(1445990400000) ],
[
'timestamp' => new MongoDB\BSON\Timestamp(1234, 5678) ],
[
'regex' => new MongoDB\BSON\Regex('pattern', 'i') ],
[
'code' => new MongoDB\BSON\Javascript('function() { return 1; }') ],
[
'code_ws' => new MongoDB\BSON\Javascript('function() { return a; }', ['a' => 1]) ],
[
'minkey' => new MongoDB\BSON\MinKey ],
[
'maxkey' => new MongoDB\BSON\MaxKey ],
];

foreach (
$documents as $document) {
$bson = MongoDB\BSON\fromPHP($document);
echo
MongoDB\BSON\toRelaxedExtendedJSON($bson), "\n";
}

?>

以上示例会输出:

{ "null" : null }
{ "boolean" : true }
{ "string" : "foo" }
{ "int32" : 123 }
{ "int64" : 4294967295 }
{ "double" : 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" : "2015-10-28T00:00:00Z" } }
{ "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" : 1 } } }
{ "minkey" : { "$minKey" : 1 } }
{ "maxkey" : { "$maxKey" : 1 } }

参见