MongoDB\Driver\ReadPreference
PHP Manual

MongoDB\Driver\ReadPreference::bsonSerialize

(mongodb >=1.2.0)

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

説明

final public object MongoDB\Driver\ReadPreference::bsonSerialize ( void )

パラメータ

この関数にはパラメータはありません。

返り値

Returns an object for serializing the ReadPreference as BSON.

エラー / 例外

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

例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" }, {  } ] }

参考


MongoDB\Driver\ReadPreference
PHP Manual