Set the read preference for this connection

MongoClient::selectDB
MongoClient::__toString
MongoClient
PHP Manual

# MongoClient::setReadPreference

(PECL mongo >=1.3.0)

MongoClient::setReadPreference — Set the read preference for this connection

### Description

public bool MongoClient::setReadPreference ( string `$read_preference` [, array `$tags` ] )

### Parameters

`read_preference`

  The read preference mode: `MongoClient::RP_PRIMARY`, `MongoClient::RP_PRIMARY_PREFERRED`, `MongoClient::RP_SECONDARY`, `MongoClient::RP_SECONDARY_PREFERRED`, or `MongoClient::RP_NEAREST`.

`tags`

  An array of zero or more tag sets, where each tag set is itself an array of criteria used to match tags on replica set members.

### Return Values

Returns `TRUE` on success, or `FALSE` otherwise.

### Errors/Exceptions

Emits `E_WARNING` if either parameter is invalid, or if one or more tag sets are provided with the `MongoClient::RP_PRIMARY` read preference mode.

### Examples

Example #1 MongoClient::setReadPreference() tag set array syntax example

`<?php
$m = new MongoClient();
// Prefer the nearest server in the "east" data center also used for reporting,
// but fall back to a server in the "west" data center
$m->setReadPreference(MongoClient::RP_NEAREST, array(
array('dc' => 'east', 'use' => 'reporting'),
array('dc' => 'west'),
));
?>`

### See Also

- The read preferences documentation.

MongoClient::selectDB
MongoClient::__toString
MongoClient
PHP Manual