MongoDB\Driver\BulkWrite::update

(mongodb >=1.0.0)

MongoDB\Driver\BulkWrite::update — Додати операцію оновлення до порції

Опис

public MongoDB\Driver\BulkWrite::update(array|object $filter, array|object $newObj, ?array $updateOptions = null): void

Добавляет операцию обновления вMongoDB\Driver\BulkWrite

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

filter(array|object)

» Предикат запиту. Порожній предикат збігатиметься з усіма елементами колекції.

Зауваження: При обчисленні критеріїв запиту MongoDB порівнює типи та значення відповідно до власних » правилами порівняння типів BSON, відмінних від правил порівняння і приведення типів PHP. Коли вказано спеціальний тип BSON, критерій запиту має відповідати класу BSON (тобто використовувати MongoDB\BSON\ObjectId для вибірки по » ObjectId

newObj(array|object)

Документ, що містить оператори оновлення (наприклад, $set), заменяющий документ (наПриклад,тільки вирази field:value) или» конвеєр агрегації

updateOptions

updateOptions

ОпцияТипОписЗначение по умолчанию
arrayFiltersarray
Масив документів фільтрів, який визначає, які елементи масиву будуть змінені для операції поновлення в полі масиву. Дивіться » Вказуйте arrayFilters для операцій оновлення масиву у посібнику MongoDB для отримання додаткової інформації.

Опція доступна з MongoDB 3.6+ і призведе до виключення під час виконання, якщо вона вказана для старої версії сервера.

| | collation | array|object |

» Зіставлення дозволяє користувачам вказувати специфічні для конкретної мови правила для порівняння рядків, такі як реакцію на регістр літер та надрядкові знаки. Якщо поставлено зіставлення, то поле "locale"также обязательно. Опис полей смотрите в разделе» Зіставлення

Якщо зіставлення не задано явно, але в колекції визначено зіставлення за умовчанням, буде використано воно. Якщо немає ні того, то MongoDB буде використовувати просте бінарне порівняння рядків.

Ця опція доступна у MongoDB 3.4+ і, якщо буде використана для більш старих версій, викличе виняток під час виконання.

| | hint | string|array|object |

Індекс специфікації. Вкажіть або назву індексу у вигляді рядка, або шаблон ключа індексу. Якщо зазначено, система запитів розглядатиме плани лише з використанням індексу підказок.

Опція доступна з MongoDB 4.4+ і призведе до виключення під час виконання, якщо вона вказана для старої версії сервера.

| | multi | bool | Оновити лише перший знайдений документ, якщо false або всі відповідні документи при true. Ця опція не може бути true, когдаnewObj- заменяющий документ. |false| | upsert | bool | Еслиfilterне соответствует существующему документу, будет вставленновийдокумент. Документ будет создан изnewObjякщо він замінює документ (тобто відсутні оператори оновлення); в іншому випадку оператори в newObjбудут применяться кfilterдля создания нового документа. |false

Значення, що повертаються

Функція не повертає значення після виконання.

Помилки

список змін

ВерсияОпис
PECL mongodb 1.7.0Добавлена опция"hint"
PECL mongodb 1.6.0ПараметрnewObj тепер приймає конвеєр агрегації. Потрібно MongoDB 4.2+, для старішої версії сервера викине виняток під час виконання.
PECL mongodb 1.5.0Використання опції "arrayFilters" призведе до виключення під час виконання, якщо вона не підтримується сервером. Раніше не викидався виняток, і цей параметр, можливо, проігнорували.
PECL mongodb 1.4.0Добавлена опция"arrayFilters"
PECL mongodb 1.2.0Добавлена опция"collation"

Приклади

Приклад #1 Приклад використання MongoDB\Driver\BulkWrite::update()****

Loading...

Дивіться також