MongoDB\Driver\Server::executeCommand
  Execute a database command on this server
  
 
  Description
  
   final public MongoDB\Driver\Cursor MongoDB\Driver\Server::executeCommand
    ( string $db
   , MongoDB\Driver\Command $command
   [, MongoDB\Driver\ReadPreference $readPreference
  ] )
  
  Note: 
   
    The readPreference parameter does not control the
    server to which the driver issues the command; the command will always be
    executed on this server object. Instead, it may be used when issuing the
    command to a secondary (from a replica set connection, not standalone) or
    mongos node to ensure that the driver sets the wire protocol accordingly or
    adds the read preference to the command document, respectively.
   
  
  
 
  Parameters
  
   
   
    - 
db(string)
- 
     
      The name of the database on which to execute the command.
      
- 
command(MongoDB\Driver\Command)
- 
     
      The MongoDB\Driver\Command to execute.
      
- 
readPreference(MongoDB\Driver\ReadPreference)
- 
     
      Optionally, a MongoDB\Driver\ReadPreference to select the server for this operation. If none is given, the read preference from the MongoDB Connection URI will be used.
      
 
 
  Return Values
  Returns MongoDB\Driver\Cursor on success.
  
 
  Errors/Exceptions
  
   - Throws MongoDB\Driver\Exception\InvalidArgumentException on argument parsing errors.
- Throws MongoDB\Driver\Exception\ConnectionException if connection to the server fails (for reasons other than authentication).
- Throws MongoDB\Driver\Exception\AuthenticationException if authentication is needed and fails.
- Throws MongoDB\Driver\Exception\RuntimeException on other errors (e.g. invalid command, issuing a write command to a secondary).
 
 
  Notes
  Note: 
   
    This method does not take a
    MongoDB\Driver\WriteConcern parameter. For write
    commands (e.g.
    » findAndModify
    in MongoDB 3.2+), the write concern should be included in the
    command document itself.
   
   
    It is the caller's responsibility to ensure that the server is capable
    of executing the command. For example, executing a write operation on a
    secondary (excluding its "local" database) will fail.
   
  
  
 
  See Also
  
   - MongoDB\Driver\Command
- MongoDB\Driver\Cursor
- MongoDB\Driver\ReadPreference
- MongoDB\Driver\Manager::executeCommand