Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 4.0.x will end 8 May 2023 (12 months).
  • Bug fixes for security issues in 4.0.x will end 13 November 2023 (18 months).
  • PHP version: minimum PHP 7.3.0 Note: the minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is also supported.

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

(no description)

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

Defines 1 class


Class: Find  - X-Ref

Operation for the find command.

__construct($databaseName, $collectionName, $filter, array $options = [])   X-Ref
Constructs a find command.

Supported options:

* allowDiskUse (boolean): Enables writing to temporary files. When set
to true, queries can write data to the _tmp sub-directory in the
dbPath directory. The default is false.

* allowPartialResults (boolean): Get partial results from a mongos if
some shards are inaccessible (instead of throwing an error).

* batchSize (integer): The number of documents to return per batch.

* collation (document): Collation specification.

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

* comment (string): Attaches a comment to the query. If "$comment" also
exists in the modifiers document, this option will take precedence.

* cursorType (enum): Indicates the type of cursor to use. Must be either
NON_TAILABLE, TAILABLE, or TAILABLE_AWAIT. The default is
NON_TAILABLE.

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

* limit (integer): The maximum number of documents to return.

* max (document): The exclusive upper bound for a specific index.

* maxAwaitTimeMS (integer): The maxium amount of time for the server to wait
on new documents to satisfy a query, if cursorType is TAILABLE_AWAIT.

* maxScan (integer): Maximum number of documents or index keys to scan
when executing the query.

This option has been deprecated since version 1.4.

* maxTimeMS (integer): The maximum amount of time to allow the query to
run. If "$maxTimeMS" also exists in the modifiers document, this
option will take precedence.

* min (document): The inclusive upper bound for a specific index.

* modifiers (document): Meta operators that modify the output or
behavior of a query. Use of these operators is deprecated in favor of
named options.

* noCursorTimeout (boolean): The server normally times out idle cursors
after an inactivity period (10 minutes) to prevent excess memory use.
Set this option to prevent that.

* oplogReplay (boolean): Internal replication use only. The driver
should not set this. This option is deprecated as of MongoDB 4.4.

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

* readConcern (MongoDB\Driver\ReadConcern): Read concern.

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

* readPreference (MongoDB\Driver\ReadPreference): Read preference.

* returnKey (boolean): If true, returns only the index keys in the
resulting documents.

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

Sessions are not supported for server versions < 3.6.

* showRecordId (boolean): Determines whether to return the record
identifier for each document. If true, adds a field $recordId to the
returned documents.

* skip (integer): The number of documents to skip before returning.

* snapshot (boolean): Prevents the cursor from returning a document more
than once because of an intervening write operation.

This options has been deprecated since version 1.4.

* sort (document): The order in which to return matching documents. If
"$orderby" also exists in the modifiers document, this option will
take precedence.

* typeMap (array): Type map for BSON deserialization. This will be
applied to the returned Cursor (it is not sent to the server).

param: string       $databaseName   Database name
param: string       $collectionName Collection name
param: array|object $filter         Query by which to filter documents
param: array        $options        Command options

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

return: Cursor
param: Server $server

getCommandDocument(Server $server)   X-Ref
No description

createCommandDocument()   X-Ref
Construct a command document for Find


createExecuteOptions()   X-Ref
Create options for executing the command.

return: array

createQueryOptions()   X-Ref
Create options for the find query.

Note that these are separate from the options for executing the command,
which are created in createExecuteOptions().

return: array