Défini les préférences de lecture pour cette commande

# MongoCommandCursor::setReadPreference

(PECL mongo >=1.6.0)

MongoCommandCursor::setReadPreference — Défini les préférences de lecture pour cette commande

### Description

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

### Liste de paramètres

`read_preference`

  Le mode de préférence de lecture : `MongoClient::RP_PRIMARY`, `MongoClient::RP_PRIMARY_PREFERRED`, `MongoClient::RP_SECONDARY`, `MongoClient::RP_SECONDARY_PREFERRED`, ou `MongoClient::RP_NEAREST`.

`tags`

  Un tableau de zéro ou plusieurs jeux de tags, où chaque jeu de tags est lui même un tableau de critères utilisés pour faire correspondre les tags sur les membres du jeu de réplication.

### Valeurs de retour

Retourne le curseur.

### Erreurs / Exceptions

Emets une alerte de niveau `E_WARNING` si soit le paramètre est invalide, soit si un ou plusieurs jeux de tags sont fournis avec le mode de préférence de lecture `MongoClient::RP_PRIMARY`.

### Exemples

Exemple #1 Exemple avec MongoCommandCursor::setReadPreference() et un tableau de jeux de tag

`<?php
$m = new MongoClient('mongodb://rs1.example.com:27017', array('replicaSet' => 'myReplSetName'));
$collection = $m->selectCollection('test', 'people');
$cursor = $collection->aggregateCursor( [
[ '$group' => [ '_id' => '$name', 'points' => [ '$sum' => '$points' ] ] ],
[ '$sort' => [ 'points' => -1 ] ],
] );
// Préférer le serveur le plus proche dans le centre de données "east" également
// utilisé pour le rporting, mais utilise le centre de données "west" en cas de problème
$cursor->setReadPreference(MongoClient::RP_NEAREST, [
[ 'dc' => 'east', 'use' => 'reporting' ],
[ 'dc' => 'west' ],
] );
foreach ($cursor as $person) {
// ...
}
// Si les préférences de lecture sont changées, elles seront utilisées la
// prochaine fois que le curseur sera ré-initialisé et que la commande sera
// ré-exécutée.
$cursor->setReadPreference(MongoClient::RP_PRIMARY);
foreach ($cursor as $person) {
// ...
}
?>`

### Voir aussi

- La documentation sur les préférences de lecture.
- MongoCommandCursor::getReadPreference() - Récupère les préférences de lecture pour cette commande
- MongoCursorInterface::setReadPreference() - Définit les préférences de lecture pour cette requête