Moodle PHP Documentation 4.1
Moodle 4.1.11 (Build: 20240610) (c8c84b4af18)
MongoDB\Operation\Aggregate Class Reference
Inheritance diagram for MongoDB\Operation\Aggregate:
MongoDB\Operation\Executable MongoDB\Operation\Explainable MongoDB\Operation\Executable

Public Member Functions

 __construct (string $databaseName, ?string $collectionName, array $pipeline, array $options=[])
 Constructs an aggregate command.
 
 execute (Server $server)
 Execute the operation.
 
 getCommandDocument (Server $server)
 Returns the command document for this operation.
 

Constructor & Destructor Documentation

◆ __construct()

MongoDB\Operation\Aggregate::__construct ( string $databaseName,
?string $collectionName,
array $pipeline,
array $options = [] )

Constructs an aggregate command.

Supported options:

  • allowDiskUse (boolean): Enables writing to temporary files. When set to true, aggregation stages can write data to the _tmp sub-directory in the dbPath directory.
  • batchSize (integer): The number of documents to return per batch.
  • bypassDocumentValidation (boolean): If true, allows the write to circumvent document level validation. This only applies when an $out or $merge stage is specified.
  • collation (document): Collation specification.
  • comment (mixed): BSON value to attach as a comment to this command.

    Only string values are supported for server versions < 4.4.

  • explain (boolean): Specifies whether or not to return the information on the processing of the pipeline.
  • hint (string|document): The index to use. Specify either the index name as a string or the index key pattern as a document. If specified, then the query system will only consider plans using the hinted index.
  • let (document): Map of parameter names and values. Values must be constant or closed expressions that do not reference document fields. Parameters can then be accessed as variables in an aggregate expression context (e.g. "$$var").

    This is not supported for server versions < 5.0 and will result in an exception at execution time if used.

  • maxTimeMS (integer): The maximum amount of time to allow the query to run.
  • readConcern (MongoDB\Driver\ReadConcern): Read concern.
  • readPreference (MongoDB\Driver\ReadPreference): Read preference.

    This option is ignored if an $out or $merge stage is specified.

  • session (MongoDB\Driver\Session): Client session.
  • typeMap (array): Type map for BSON deserialization. This will be applied to the returned Cursor (it is not sent to the server).
  • useCursor (boolean): Indicates whether the command will request that the server provide results using a cursor. The default is true.

    This option allows users to turn off cursors if necessary to aid in mongod/mongos upgrades.

  • writeConcern (MongoDB\Driver\WriteConcern): Write concern. This only applies when an $out or $merge stage is specified.

Note: Collection-agnostic commands (e.g. $currentOp) may be executed by specifying null for the collection name.

Parameters
string$databaseNameDatabase name
string | null$collectionNameCollection name
array$pipelineList of pipeline operations
array$optionsCommand options
Exceptions
InvalidArgumentExceptionfor parameter/option parsing errors

Member Function Documentation

◆ execute()

MongoDB\Operation\Aggregate::execute ( Server $server)

Execute the operation.

See also
Executable\execute()
Return values
ArrayIterator|Cursor
Exceptions
UnexpectedValueExceptionif the command response was malformed
UnsupportedExceptionif read concern or write concern is used and unsupported
DriverRuntimeExceptionfor other driver errors (e.g. connection errors)

Implements MongoDB\Operation\Executable.

◆ getCommandDocument()

MongoDB\Operation\Aggregate::getCommandDocument ( Server $server)

Returns the command document for this operation.

See also
Explainable\getCommandDocument()
Return values
array

Implements MongoDB\Operation\Explainable.


The documentation for this class was generated from the following file: