# MongoClient::getReadPreference

(PECL mongo >=1.3.0)

MongoClient::getReadPreference — Get the read preference for this connection

This extension that defines this method is deprecated. Instead, the MongoDB extension should be used. There is no equivalent for this method in the new extension.

### Description

public MongoClient::getReadPreference ( ) : array

### Parameters

This function has no parameters.

### Return Values

This function returns an array describing the read preference. The array contains the values `type` for the string read preference mode (corresponding to the MongoClient constants), and `tagsets` containing a list of all tag set criteria. If no tag sets were specified, `tagsets` will not be present in the array.

### Changelog

Version | Description
--- | ---
PECL mongo 1.3.3 | The return value has changed to be consistent with MongoClient::setReadPreference(). The `type` value was changed from a number to a string, `type_string` was removed, and `tagsets` now expresses tags as key/value pairs instead of colon-delimited strings.

### Examples

Example #1 MongoClient::getReadPreference() return value example

`<?php
$m = new MongoClient();
$m->setReadPreference(MongoClient::RP_SECONDARY, array(
array('dc' => 'east', 'use' => 'reporting'),
array('dc' => 'west'),
array(),
));
var_dump($m->getReadPreference());
?>`

The above example will output:

    array(2) {
      ["type"]=>
      string(9) "secondary"
      ["tagsets"]=>
      array(3) {
        [0]=>
        array(2) {
          ["dc"]=>
          string(4) "east"
          ["use"]=>
          string(9) "reporting"
        }
        [1]=>
        array(1) {
          ["dc"]=>
          string(7) "west"
        }
        [2]=>
        array(0) {
        }
      }
    }

### See Also

- The read preferences documentation.
- MongoClient::setReadPreference() - Set the read preference for this connection