PHP.mk документација

MongoDB\Driver\Query::__construct

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

mongodb-driver-query.construct.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека mongodb-driver-query.construct.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
MongoDB\Driver\Query::__construct

Референца за `mongodb-driver-query.construct.php` со подобрена типографија и навигација.

mongodb-driver-query.construct.php

MongoDB\Driver\Query::__construct

класата MongoDB\Driver\BulkWrite

MongoDB\Driver\Query::__constructКреирај нов Query

= NULL

final public MongoDB\Driver\Query::__construct(array|object $filter, ?array $queryOptions = null)

(PHP 5, PHP 7, PHP 8, PECL tidy >= 0.5.2) MongoDB\Driver\QueryКреирај нов Query ги инкапсулира резултатите од команда или прашање на MongoDB и може да биде вратена од.

Параметри

filter (array|object)

На Додава операција за бришење во» предикат за прашање

Забелешка: . Празен предикат ќе одговара на сите документи во колекцијата. При проценка на критериумите за прашање, MongoDB ги споредува типовите и вредностите според сопствените» правила за споредба на BSON типови comparison and префрлање на типови , што се разликува од PHP-овите правила. При совпаѓање со специјален BSON тип, критериумите за прашање треба да ја користат соодветната BSON класа MongoDB\BSON\ObjectId (на пр. користете за да одговарате на).

queryOptions

queryOptions
Опција Тип = NULL
allowDiskUse bool

, што е непроменлива вредносна објект што претставува база на податоци query. Query може потоа да се изврши со

allowPartialResults bool

Му дозволува на MongoDB да користи привремени дискови датотеки за складирање на податоци што надминуваат 100 мегабајти системска меморија при обработка на блокирачка операција за сортирање.

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "partial" Се враќа на застарениот

awaitData bool опција ако не е специфицирана. "tailable" Користи во комбинација со
batchSize int

опција за привремено блокирање на getMore операција на курсорот ако е на крајот од податоците наместо да враќа без податоци. По истекот на времето, query се враќа нормално.

Бројот на документи што треба да се вратат во првата пратка. Стандардно е 101. Големина на пратка од 0 значи дека курсорот ќе биде воспоставен, но ниту еден документ нема да биде вратен во првата пратка.

collation array|object

» ObjectId » Collation "locale" им овозможува на корисниците да специфицираат правила специфични за јазикот за споредба на низи, како што се правила за големина на букви и акценти. При специфицирање на collation, поле е задолжително; сите други полиња за collation се опционални. За описи на полињата, видете.

» Collation Document

Ако collation не е специфициран, но колекцијата има стандарден collation, операцијата ја користи collation специфицирана за колекцијата. Ако не е специфициран collation за колекцијата или за операцијата, MongoDB ја користи едноставната бинарна споредба што се користеше во претходните верзии за споредби на низи.

comment mixed

Во верзиите на MongoDB пред 3.2, каде што query користат legacy wire protocol OP_QUERY, големина на пратка од 1 ќе го затвори курсорот без оглед на бројот на совпаднати документи.

Произволен коментар за да помогне во следењето на операцијата преку профајлерот на базата на податоци, currentOp излез и логовите.

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "$comment" Коментарот може да биде било кој валиден BSON тип за MongoDB 4.4+. Постарите верзии на серверот поддржуваат само стринг вредности.

exhaust bool

модификатор ако не е специфициран.

Стримирај ги податоците целосно во повеќе "more" пакети, со претпоставка дека клиентот целосно ќе ги прочита сите барани податоци. Побрзо кога повлекуваш многу податоци и знаеш дека сакаш да ги повлечеш сите. Забелешка: клиентот не смее да не ги прочита сите податоци освен ако не ја затвори врската.

explain bool

Враќа trueОваа опција не е поддржана од командата find во MongoDB 3.2+ и ќе го присили драјверот да ја користи legacy wire protocol верзијата (т.е. OP_QUERY). MongoDB\Driver\Cursor , вратениот

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "$explain" Коментарот може да биде било кој валиден BSON тип за MongoDB 4.4+. Постарите верзии на серверот поддржуваат само стринг вредности.

ќе содржи еден документ што го опишува процесот и индексите користени за враќање на query. Оваа опција не е поддржана од командата find во MongoDB 3.2+ и ќе биде почитувана само кога се користи legacy wire protocol верзијата (т.е. OP_QUERY). Командата » explain

hint string|array|object

Оваа опција е достапна во MongoDB 3.4+ и ќе резултира со исклучок при извршување ако е специфицирана за постар сервер.

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "hint" Се враќа на застарениот

let array|object

Мапа на имиња и вредности на параметри. Вредностите мора да бидат константи или затворени изрази кои не упатуваат на полиња на документот. Параметрите потоа може да се пристапат како променливи во контекст на агрегатни изрази (на пр. $$var).

Мапа на имиња и вредности на параметри. Вредностите мора да бидат константи или затворени изрази што не реферираат на полиња во документот. Параметрите потоа можат да бидат пристапени како променливи во контекст на агрегиран израз (на пр.

limit int

Оваа опција е достапна во MongoDB 5.0+ и ќе резултира со исклучок при извршување ако е специфицирана за постар сервер.

max array|object

На exclusive Максималниот број на документи што треба да се вратат. Ако не е специфицирано, тогаш стандардно нема ограничување. Ограничување од 0 е еквивалентно на поставување без ограничување.

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "$max" Коментарот може да биде било кој валиден BSON тип за MongoDB 4.4+. Постарите верзии на серверот поддржуваат само стринг вредности.

maxAwaitTimeMS int

горна граница за специфичен индекс. "tailable" and "awaitData" options.

maxTimeMS int

Позитивен цел број што означува временско ограничување во милисекунди за серверот да блокира операција getMore ако нема достапни податоци. Оваа опција треба да се користи само во комбинација со

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "$maxTimeMS" Коментарот може да биде било кој валиден BSON тип за MongoDB 4.4+. Постарите верзии на серверот поддржуваат само стринг вредности.

min array|object

На inclusive Кумулативното временско ограничување во милисекунди за обработка на операции на курсорот. MongoDB ја прекинува операцијата во најраната следна точка на прекин.

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "$min" Коментарот може да биде било кој валиден BSON тип за MongoDB 4.4+. Постарите верзии на серверот поддржуваат само стринг вредности.

noCursorTimeout bool долна граница за специфичен индекс.
projection array|object

На Спречува серверот да ги истекува неактивните курсори по период на неактивност (10 минути). » спецификација за проекција

за да се утврди кои полиња да се вклучат во вратените документи. Ако го користите ODM функционалност __pclass за десериализација на документи како нивната оригинална PHP класа, погрижете се да го вклучите stdClass поле во проекцијата. Ова е потребно за да работи десериализацијата и без него, екстензијата ќе врати (по стандард) а

readConcern MongoDB\Driver\ReadConcern

објект наместо тоа. Овој метод не користи стандардно претпочитање за читање од ќе се користи.

Оваа опција е достапна во MongoDB 3.2+ и ќе резултира со исклучок при извршување ако е специфицирана за постар сервер.

returnKey bool

Враќа trueКонцерн за читање што треба да се примени на операцијата. Стандардно, концернот за читање од false. Ако true , враќа само клучеви од индекс во резултатните документи. Стандардна вредност е

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "$returnKey" Коментарот може да биде било кој валиден BSON тип за MongoDB 4.4+. Постарите верзии на серверот поддржуваат само стринг вредности.

showRecordId bool

и командата find не користи индекс, вратените документи ќе бидат празни. trueОпределува дали да се врати идентификаторот на записот за секој документ. Ако "$recordId" поле на вратените документи.

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "$showDiskLoc" Коментарот може да биде било кој валиден BSON тип за MongoDB 4.4+. Постарите верзии на серверот поддржуваат само стринг вредности.

singleBatch bool Одредува дали курсорот да се затвори по првата група. Стандардно е false.
skip int Број на документи што треба да се прескокнат. Стандардно е 0.
sort array|object

Спецификација за сортирање за редоследот на резултатите.

За query против sharded колекција, враќа делумни резултати од mongos ако некои шардови се недостапни наместо да фрли грешка. "$orderby" Коментарот може да биде било кој валиден BSON тип за MongoDB 4.4+. Постарите верзии на серверот поддржуваат само стринг вредности.

tailable bool Враќа курсор што може да се следи за колекција со ограничена големина.

Errors/Exceptions

Дневник на промени

Верзија = NULL
(mongodb >=1.3.0)

На "partial" опцијата беше отстранета. Користете ја "allowPartialResults" опцијата наместо тоа.

На "maxScan" опцијата беше отстранета. Поддршката за оваа опција беше отстранета во MongoDB 4.2.

На "modifiers" опцијата беше отстранета. Оваа опција се користеше за модификатори на стари барања, кои сите се застарени.

На "oplogReplay" опцијата беше отстранета. Таа се игнорира во MongoDB 4.4 и понови.

На "snapshot" опцијата беше отстранета. Поддршката за оваа опција беше отстранета во MongoDB 4.0.

Негативна вредност за "limit" опцијата повеќе не подразбира true » PEAR "singleBatch" опцијата. За да добиете само една група резултати, комбинирајте позитивна "limit" вредност со "singleBatch" option.

опсег сега е опционална.

Додаден е "let" опцијата. На "comment" опцијата сега прифаќа било каков тип.

PECL mongodb 1.8.0

Додаден е "allowDiskUse" option.

На "oplogReplay" опцијата е застарена.

параметарот, кој е непроменет од претходните верзии.

На "maxScan" and "snapshot" опциите се застарени.

за PHP 8.0+.

Додаден е "maxAwaitTimeMS" option.

PECL mongodb 1.3.0

Додаден е "allowPartialResults", "collation", "comment", "hint", "max", "maxScan", "maxTimeMS", "min", "returnKey", "showRecordId"Препорачаниот начин за избегнување на SQL инјекција е со врзување на сите податоци преку подготвени изрази. Користењето на параметризирани прашања не е доволно за целосно избегнување на SQL инјекција, но тоа е најлесниот и најбезбедниот начин за обезбедување влез во SQL изразите. Сите динамични литерали на податоци во "snapshot" options.

Преименувано "partial" опција на "allowPartialResults"За компатибилност наназад, "partial" ќе се чита ако "allowPartialResults" не е наведено.

Отстранета е старата "secondaryOk" опција, која е застарена. За барања што го користат стариот протокол OP_QUERY, драјверот ќе го постави secondaryOk бит по потреба во согласност со » Спецификација за избор на сервер.

во претходните верзии. Дополнително, екстензијата повеќе не поддржува сите Додаден е "readConcern" option.

Примери

Пример #1 MongoDB\Driver\Query::__construct() example

<?php
/* Select only documents authord by "bjori" with at least 100 views */
$filter = [
'author' => 'bjori',
'views' => [
'$gte' => 100,
],
];

$options = [
/* Only return the following fields in the matching documents */
'projection' => [
'title' => 1,
'article' => 1,
],
/* Return the documents in descending order of views */
'sort' => [
'views' => -1
],
];

$query = new MongoDB\Driver\Query($filter, $options);

$manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');
$readPreference = new MongoDB\Driver\ReadPreference(MongoDB\Driver\ReadPreference::PRIMARY);
$cursor = $manager->executeQuery('databaseName.collectionName', $query, ['readPreference' => $readPreference]);

foreach(
$cursor as $document) {
var_dump($document);
}

?>

Белешки од корисници

Нема белешки од корисници за оваа страница.
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.