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