MongoDB\Driver\Manager::executeQuery
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
MongoDB\Driver\Manager::executeQuery
Референца за `mongodb-driver-manager.executequery.php` со подобрена типографија и навигација.
MongoDB\Driver\Manager::executeQuery
класата MongoDB\Driver\BulkWrite
MongoDB\Driver\Manager::executeQuery — Execute a database query
= NULL
$namespace, MongoDB\Driver\Query $query, ?array $options = null): MongoDB\Driver\Cursor
Selects a server according to the "readPreference" option and executes the query on that server.
Стандардни вредности за "readPreference" опцијата и Query's
"readConcern" опцијата ќе бидат изведени од активна трансакција (означена со "session" опцијата), проследено со URI за поврзување.
Параметри
namespace(string)-
Целосно квалификувано име на простор (на пр.
"databaseName.collectionName"). query(MongoDB\Driver\Query)-
Прашањето за извршување.
options-
options Опција Тип = NULL readPreference MongoDB\Driver\ReadPreference Преференција за читање што ќе се користи за избор на сервер за операцијата.
session MongoDB\Driver\Session Сесија што ќе се поврзе со операцијата.
Вратени вредности
Патеката до PHP скриптата што треба да се провери. MongoDB\Driver\Cursor на успешен исход.
Errors/Exceptions
- ). Ако повикот не успее, ќе врати MongoDB\Driver\Exception\InvalidArgumentException » Промени текови
- ). Ако повикот не успее, ќе врати MongoDB\Driver\Exception\ConnectionException ако врската со серверот пропадне (од причини различни од автентикација).
- ). Ако повикот не успее, ќе врати MongoDB\Driver\Exception\AuthenticationException ако автентикацијата е потребна и пропадне.
- ). Ако повикот не успее, ќе врати MongoDB\Driver\Exception\RuntimeException на други грешки (на пр. невалидни оператори за прашање).
Дневник на промени
| Верзија | = NULL |
|---|---|
| (mongodb >=1.3.0) |
На options параметарот веќе не прифаќа
MongoDB\Driver\ReadPreference instance.
|
| PECL mongodb 1.21.0 |
Проследување на MongoDB\Driver\ReadPreference објект како
options е застарен и ќе биде отстранет во 2.0.
|
| на грешки при парсирање на аргументи. |
Третиот параметар сега е options низа. За компатибилност со претходните верзии, овој параметар сè уште ќе прифаќа
MongoDB\Driver\ReadPreference object.
|
Примери
Пример #1 ги инкапсулира резултатите од команда или прашање на MongoDB и може да биде вратена од example
<?php
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert(['x' => 1]);
$bulk->insert(['x' => 2]);
$bulk->insert(['x' => 3]);
$manager->executeBulkWrite('db.collection', $bulk);
$filter = ['x' => ['$gt' => 1]];
$options = [
'projection' => ['_id' => 0],
'sort' => ['x' => -1],
];
$query = new MongoDB\Driver\Query($filter, $options);
$cursor = $manager->executeQuery('db.collection', $query);
foreach ($cursor as $document) {
var_dump($document);
}
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
object(stdClass)#6 (1) {
["x"]=>
int(3)
}
object(stdClass)#7 (1) {
["x"]=>
int(2)
}
Example #2 Limiting execution time for a query
На "maxTimeMS"
MongoDB\Driver\Query option may be used to limit the execution time of a query. Note that this time limit is enforced on the server side and does not take network latency into account. See
» Terminate Running Operations
во прирачникот на MongoDB за повеќе информации.
<?php
$manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');
$filter = ['x' => ['$gt' => 1]];
$options = [
'maxTimeMS' => 1000,
];
$query = new MongoDB\Driver\Query($filter, $options);
$cursor = $manager->executeQuery('db.collection', $query);
foreach ($cursor as $document) {
var_dump($document);
}
?>If the query fails to complete after one second of execution time on the server, a MongoDB\Driver\Exception\ExecutionTimeoutException ќе биде фрлена.
Види Исто така
- MongoDB\Driver\Cursor
- MongoDB\Driver\Query
- MongoDB\Driver\ReadPreference
- MongoDB\Driver\Server::executeQuery() - Извршува барање на базата на податоци на овој сервер