MongoDB\Driver\ReadPreference::bsonSerialize

(mongodb >=1.2.0)

MongoDB\Driver\ReadPreference::bsonSerializeReturns an object for BSON serialization

Description

finalpublicMongoDB\Driver\ReadPreference::bsonSerialize(): stdClass

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Returns an object for serializing the ReadPreference as BSON.

Erreurs / Exceptions

  • Lance une exception MongoDB\Driver\InvalidArgumentException lors d'une erreur survenue pendant l'analyse d'un argument.

Exemples

Exemple #1 MongoDB\Driver\ReadPreference::bsonSerialize() with primary read preference

<?php

$rp
= new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::RP_PRIMARY);
var_dump($rp->bsonSerialize());

echo
"\n", MongoDB\BSON\toJSON(MongoDB\BSON\fromPHP($rp));

?>

Résultat de l'exemple ci-dessus est similaire à :

object(stdClass)#2 (1) { ["mode"]=> string(7) "primary" } { "mode" : "primary" }

Exemple #2 MongoDB\Driver\ReadPreference::bsonSerialize() with secondary read preference and tag sets

<?php

$rp
= new MongoDB\Driver\ReadPreference(
MongoDB\Driver\ReadPreference::RP_SECONDARY,
[
[
'dc' => 'ny'],
[
'dc' => 'sf', 'use' => 'reporting'],
[]
]
);
var_dump($rp->bsonSerialize());

echo
"\n", MongoDB\BSON\toJSON(MongoDB\BSON\fromPHP($rp));

?>

Résultat de l'exemple ci-dessus est similaire à :

object(stdClass)#2 (2) { ["mode"]=> string(9) "secondary" ["tags"]=> array(3) { [0]=> object(stdClass)#1 (1) { ["dc"]=> string(2) "ny" } [1]=> object(stdClass)#5 (2) { ["dc"]=> string(2) "sf" ["use"]=> string(9) "reporting" } [2]=> object(stdClass)#4 (0) { } } } { "mode" : "secondary", "tags" : [ { "dc" : "ny" }, { "dc" : "sf", "use" : "reporting" }, { } ] }

Exemple #3 MongoDB\Driver\ReadPreference::bsonSerialize() with secondary read preference and max staleness

<?php

$rp
= new MongoDB\Driver\ReadPreference(
MongoDB\Driver\ReadPreference::RP_SECONDARY,
null,
[
'maxStalenessSeconds' => 120]
);
var_dump($rp->bsonSerialize());

echo
"\n", MongoDB\BSON\toJSON(MongoDB\BSON\fromPHP($rp));

?>

Résultat de l'exemple ci-dessus est similaire à :

object(stdClass)#2 (2) { ["mode"]=> string(9) "secondary" ["maxStalenessSeconds"]=> int(120) } { "mode" : "secondary", "maxStalenessSeconds" : 120 }

Voir aussi

To Top