PHP 8.5.0 Alpha 2 available for testing

MongoDB\Driver\Exception\BulkWriteCommandException::getPartialResult

(mongodb >=2.1.0)

MongoDB\Driver\Exception\BulkWriteCommandException::getPartialResultВозвращает результаты успешных операций записи

Описание

final public MongoDB\Driver\Exception\BulkWriteCommandException::getPartialResult(): ?MongoDB\Driver\BulkWriteCommandResult

Список параметров

Сигнатура функции не содержит параметров.

Возвращаемые значения

Метод возвращает объект MongoDB\Driver\BulkWriteCommandResult с результатами успешных операций, которые выполнились, прежде чем возникла ошибка. Метод вернёт значение null, если невозможно определить, что хотя бы одна запись выполнилась успешно и сервер подтвердил запись.

Примеры

Пример #1 Пример получения частичного результата, если хотя бы одна запись выполнилась успешно

<?php

$manager
= new MongoDB\Driver\Manager();

$bulk = new MongoDB\Driver\BulkWriteCommand();
$bulk->deleteMany('db.coll', []);
$bulk->insertOne('db.coll', ['_id' => 1]);
$bulk->insertOne('db.coll', ['_id' => 1]);

try {
$result = $manager->executeBulkWriteCommand($bulk);
} catch (
MongoDB\Driver\Exception\BulkWriteCommandException $e) {
$result = $e->getPartialResult();
}

var_dump($result?->getInsertedCount());

?>

Результат выполнения приведённого примера:

int(1)

Пример #2 Пример получения частичного результата, когда ни одна запись не выполнилась успешно

<?php

$manager
= new MongoDB\Driver\Manager();

$bulk = new MongoDB\Driver\BulkWriteCommand();
$bulk->deleteMany('db.coll', []);
$bulk->insertOne('db.coll', ['_id' => 1]);
$manager->executeBulkWriteCommand($bulk);

$bulk = new MongoDB\Driver\BulkWriteCommand();
$bulk->insertOne('db.coll', ['_id' => 1]);

try {
$result = $manager->executeBulkWriteCommand($bulk);
} catch (
MongoDB\Driver\Exception\BulkWriteCommandException $e) {
$result = $e->getPartialResult();
}

var_dump($result?->getInsertedCount());

?>

Результат выполнения приведённого примера:

NULL

Смотрите также

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top