Returns the Relaxed Extended JSON representation of the BSON document

- « MongoDB\BSON\Document::toPHP

- MongoDB\BSON\Document::__toString »

- PHP Manual
- MongoDB\BSON\Document
- Returns the Relaxed Extended JSON representation of the BSON document

# MongoDB\BSON\Document::toRelaxedExtendedJSON

(mongodb >=1.16.0)

MongoDB\BSON\Document::toRelaxedExtendedJSON — Returns the Relaxed Extended JSON representation of the BSON document

### Description

final public MongoDB\BSON\Document::toRelaxedExtendedJSON(): string

Converts the BSON document 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.

### Parameters

This function has no parameters.

### Examples

Example #1 MongoDB\BSON\Document::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\Document::fromPHP($document);    echo $bson->toRelaxedExtendedJSON(), "\n";}?>

The above example will output:

    { "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 } }

### See Also

- MongoDB\BSON\Document::fromJSON() - Construct a new document instance from a JSON string
- MongoDB\BSON\Document::toCanonicalExtendedJSON() - Returns the Canonical Extended JSON representation of the BSON document
- MongoDB\BSON\toRelaxedExtendedJSON() - Returns the Relaxed Extended JSON representation of a BSON value
- » Extended JSON Specification
- » BSON Types