MongoDB\Driver\Query::__construct
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
MongoDB\Driver\Query::__construct
Референца за `mongodb-driver-query.construct.php` со подобрена типографија и навигација.
MongoDB\Driver\Query::__construct
класата MongoDB\Driver\BulkWrite
MongoDB\Driver\Query::__construct — Креирај нов Query
= 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
- ). Ако повикот не успее, ќе врати MongoDB\Driver\Exception\InvalidArgumentException » Промени текови
Дневник на промени
| Верзија | = NULL |
|---|---|
| (mongodb >=1.3.0) |
На
На
На
На
На
Негативна вредност за |
| опсег сега е опционална. |
Додаден е |
| PECL mongodb 1.8.0 |
Додаден е
На |
| параметарот, кој е непроменет од претходните верзии. |
На |
| за PHP 8.0+. |
Додаден е |
| PECL mongodb 1.3.0 |
Додаден е
Преименувано
Отстранета е старата |
| во претходните верзии. Дополнително, екстензијата повеќе не поддржува сите | Додаден е "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);
}
?>Види Исто така
- ги инкапсулира резултатите од команда или прашање на MongoDB и може да биде вратена од - Изврши база на податоци барање
- MongoDB\Driver\Cursor