(mongodb >=1.4.0)
MongoDB\Driver\Manager::executeReadCommand — 执行读取数据库命令
$db, MongoDB\Driver\Command $command, ?array $options = null): MongoDB\Driver\Cursor根据"readPreference"选项选择服务器,并在该服务器上执行命令。
此方法将应用特定于读取命令的逻辑(例如 » distinct)。"readPreference"和"readConcern"选项的默认值将从活动事务(由"session"选项指示)推断,然后从连接URI推断。
db (string)要执行命令的数据库名称。
command (MongoDB\Driver\Command)要执行的命令。
选项
| 选项 | 类型 | 描述 |
|---|---|---|
| readConcern | MongoDB\Driver\ReadConcern |
应用于操作的读取关注点。 此选项在MongoDB 3.2+中可用,如果为较旧的服务器版本指定此选项,则会在执行时导致异常。 |
| readPreference | MongoDB\Driver\ReadPreference |
用于选择操作服务器的读取偏好。 |
| session | MongoDB\Driver\Session |
与操作关联的会话。 |
如果您正在使用正在进行事务的"session",则不能指定"readConcern"或"writeConcern"选项。这将导致抛出MongoDB\Driver\Exception\InvalidArgumentException。相反,您应该在使用MongoDB\Driver\Session::startTransaction()创建事务时设置这两个选项。
成功时返回MongoDB\Driver\Cursor。
"session"选项与关联的事务一起使用,并且同时使用了"readConcern"或"writeConcern"选项,则抛出MongoDB\Driver\Exception\InvalidArgumentException。