# MongoDB::getReadPreference

(PECL mongo >=1.3.0)

MongoDB::getReadPreference — Get the read preference for this database

### Description

public MongoDB::getReadPreference ( void ) : 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
--- | ---
1.3.3 | The return value has changed to be consistent with MongoDB::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 MongoDB::getReadPreference() return value example

`<?php
$m = new MongoClient();
$db = $m->test;
$db->setReadPreference(MongoClient::RP_SECONDARY, array(
array('dc' => 'east', 'use' => 'reporting'),
array('dc' => 'west'),
array(),
));
var_dump($db->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.
- MongoDB::setReadPreference() - Set the read preference for this database