Php/docs/mongodb-driver-readpreference.bsonserialize
MongoDB\Driver\ReadPreference::bsonSerialize
(mongodb >=1.2.0)
MongoDB\Driver\ReadPreference::bsonSerialize — Returns an object for BSON serialization
说明
final public MongoDB\Driver\ReadPreference::bsonSerialize ( ) : object
参数
此函数没有参数。
返回值
Returns an object for serializing the ReadPreference as BSON.
范例
Example #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));?>
以上例程的输出类似于:
object(stdClass)#2 (1) {
["mode"]=>
string(7) "primary"
}
{ "mode" : "primary" }
Example #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));?>
以上例程的输出类似于:
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" }, { } ] }
Example #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));?>
以上例程的输出类似于:
object(stdClass)#2 (2) {
["mode"]=>
string(9) "secondary"
["maxStalenessSeconds"]=>
int(120)
}
{ "mode" : "secondary", "maxStalenessSeconds" : 120 }
参见
- MongoDB\BSON\Serializable::bsonSerialize() - Provides an array or document to serialize as BSON
- » Read Preference reference