MongoDB\BSON\toJSON

(mongodb >=1.0.0)

MongoDB\BSON\toJSONReturns the Legacy Extended JSON representation of a BSON value

说锟斤拷

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

Converts a BSON string to its » Legacy Extended JSON representation.

Note: There exist several JSON formats for representing BSON. This function implements the "strict mode" defined in » MongoDB Extended JSON, which has been superseded by the canonical and relaxed formats defined in the » Extended JSON Specification and implemented by MongoDB\BSON\toCanonicalExtendedJSON() and MongoDB\BSON\toRelaxedExtendedJSON(), respectively.

Warning

» JSON does not support NAN and INF and MongoDB's Legacy Extended JSON format does not define an alternative representation for these values (» libbson will output nan and inf literals, which may not be parsed as valid JSON). If you are working with BSON that may contain non-finite numbers, please use MongoDB\BSON\toCanonicalExtendedJSON() or MongoDB\BSON\toRelaxedExtendedJSON().

锟斤拷锟斤拷

bson (string)

BSON value to be converted.

锟斤拷锟斤拷值

The converted JSON value.

锟斤拷锟斤拷锟届常

锟斤拷锟斤拷

Example #1 MongoDB\BSON\toJSON() 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(12345678) ],
    [ 
'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\toJSON($bson), "\n";
}

?>

锟斤拷锟斤拷锟斤拷锟教伙拷锟斤拷锟斤拷锟�

{ "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" : { "$oid" : "56315a7c6118fd1b920270b1" } }
{ "dec128" : { "$numberDecimal" : "1234.5678" } }
{ "binary" : { "$binary" : "Zm9v", "$type" : "00" } }
{ "date" : { "$date" : 1445990400000 } }
{ "timestamp" : { "$timestamp" : { "t" : 5678, "i" : 1234 } } }
{ "regex" : { "$regex" : "pattern", "$options" : "i" } }
{ "code" : { "$code" : "function() { return 1; }" } }
{ "code_ws" : { "$code" : "function() { return a; }", "$scope" : { "a" : 1 } } }
{ "minkey" : { "$minKey" : 1 } }
{ "maxkey" : { "$maxKey" : 1 } }

锟轿硷拷