Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 4.1.x will end 13 November 2023 (12 months).
  • Bug fixes for security issues in 4.1.x will end 10 November 2025 (36 months).
  • PHP version: minimum PHP 7.4.0 Note: minimum PHP version has increased since Moodle 4.0. PHP 8.0.x is supported too.

Differences Between: [Versions 310 and 401] [Versions 311 and 401] [Versions 39 and 401] [Versions 400 and 401]

(no description)

File Size: 177 lines (7 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class

FindOneAndUpdate:: (3 methods):
  __construct()
  execute()
  getCommandDocument()


Class: FindOneAndUpdate  - X-Ref

Operation for updating a document with the findAndModify command.

__construct(string $databaseName, string $collectionName, $filter, $update, array $options = [])   X-Ref
Constructs a findAndModify command for updating a document.

Supported options:

* arrayFilters (document array): A set of filters specifying to which
array elements an update should apply.

* bypassDocumentValidation (boolean): If true, allows the write to
circumvent document level validation.

* collation (document): Collation specification.

* comment (mixed): BSON value to attach as a comment to this command.

This is not supported for servers versions < 4.4.

* 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.

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

* maxTimeMS (integer): The maximum amount of time to allow the query to
run.

* projection (document): Limits the fields to return for the matching
document.

* returnDocument (enum): Whether to return the document before or after
the update is applied. Must be either
FindOneAndUpdate::RETURN_DOCUMENT_BEFORE or
FindOneAndUpdate::RETURN_DOCUMENT_AFTER. The default is
FindOneAndUpdate::RETURN_DOCUMENT_BEFORE.

* session (MongoDB\Driver\Session): Client session.

* sort (document): Determines which document the operation modifies if
the query selects multiple documents.

* typeMap (array): Type map for BSON deserialization.

* upsert (boolean): When true, a new document is created if no document
matches the query. The default is false.

* 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").

* writeConcern (MongoDB\Driver\WriteConcern): Write concern.

param: string       $databaseName   Database name
param: string       $collectionName Collection name
param: array|object $filter         Query by which to filter documents
param: array|object $update         Update to apply to the matched document
param: array        $options        Command options

execute(Server $server)   X-Ref
Execute the operation.

return: array|object|null

getCommandDocument(Server $server)   X-Ref
Returns the command document for this operation.

return: array