Documentation

Find
in package
implements Executable, Explainable

Operation for the find command.

Tags
see
Collection::find()
see
http://docs.mongodb.org/manual/tutorial/query-documents/
see
http://docs.mongodb.org/manual/reference/operator/query-modifier/

Interfaces, Classes, Traits and Enums

Executable
Explainable

Table of Contents

NON_TAILABLE  = 1
TAILABLE  = 2
TAILABLE_AWAIT  = 3
$collectionName  : string
$databaseName  : string
$filter  : array<string|int, mixed>|object
$options  : array<string|int, mixed>
__construct()  : mixed
Constructs a find command.
execute()  : Cursor
Execute the operation.
getCommandDocument()  : array<string|int, mixed>
Returns the command document for this operation.
createCommandDocument()  : array<string|int, mixed>
Construct a command document for Find
createExecuteOptions()  : array<string|int, mixed>
Create options for executing the command.
createQueryOptions()  : array<string|int, mixed>
Create options for the find query.

Constants

NON_TAILABLE

public mixed NON_TAILABLE = 1

TAILABLE

public mixed TAILABLE = 2

TAILABLE_AWAIT

public mixed TAILABLE_AWAIT = 3

Properties

$collectionName

private string $collectionName

$databaseName

private string $databaseName

$filter

private array<string|int, mixed>|object $filter

$options

private array<string|int, mixed> $options

Methods

__construct()

Constructs a find command.

public __construct(string $databaseName, string $collectionName, array<string|int, mixed>|object $filter[, array<string|int, mixed> $options = [] ]) : mixed

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.

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

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

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

  • 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).

Parameters
$databaseName : string

Database name

$collectionName : string

Collection name

$filter : array<string|int, mixed>|object

Query by which to filter documents

$options : array<string|int, mixed> = []

Command options

Tags
throws
InvalidArgumentException

for parameter/option parsing errors

Return values
mixed —

execute()

Execute the operation.

public execute(Server $server) : Cursor
Parameters
$server : Server
Tags
see
Executable::execute()
throws
UnsupportedException

if read concern is used and unsupported

throws
RuntimeException

for other driver errors (e.g. connection errors)

Return values
Cursor —

getCommandDocument()

Returns the command document for this operation.

public getCommandDocument(Server $server) : array<string|int, mixed>
Parameters
$server : Server
Tags
see
Explainable::getCommandDocument()
Return values
array<string|int, mixed> —

createCommandDocument()

Construct a command document for Find

private createCommandDocument() : array<string|int, mixed>
Return values
array<string|int, mixed> —

createQueryOptions()

Create options for the find query.

private createQueryOptions() : array<string|int, mixed>

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

Return values
array<string|int, mixed> —

Search results