(mongodb >=1.0.0)
MongoDB\Driver\BulkWrite::update — Add an update operation to the bulk
$filter
, array|object $newObj
[, array $updateOptions
] )Adds an update operation to the MongoDB\Driver\BulkWrite.
filter
(array|object)» Предикат запроса. Пустой предикат совпадет со всеми элементами коллекции.
Замечание: При вычислении критериев запроса, MongoDB сравнивает типы и значения в соответствии с собственными » правилами сравнения типов BSON, отличных от правил сравнения и приведения типов PHP. Когда истользуется специальный тип BSON, критерия запроса должна соответствовать классу BSON (т.е. использовать MongoDB\BSON\ObjectID для выборке по » ObjectID).
newObj
(array|object)A document containing either update operators (e.g. $set) or a replacement document (i.e. only field:value expressions).
updateOptions
Option | Type | Description | Default |
---|---|---|---|
collation | array|object |
» Сопоставление позволяет пользователям указывать специфичные для конкретного языка правила для сравнения строк, такие как реакцию на регистр букв и надстрочные знаки. Если задано сопоставление, то поле "locale" также обязательно. Описание полей смотрите в разделе » Сопоставление. Если сопоставление не задано явно, но у коллекции определено сопоставление по умолчанию, то будет использовано оно. Если нет ни того ни того, то MongoDB будет использовать простое бинарное сравнение строк. Эта опция доступна в MongoDB 3.4+ и, если будет использована для более старых версий, вызовет исключение во время исполнения. |
|
multi | boolean |
Update only the first matching document if FALSE , or all
matching documents TRUE . This option cannot be TRUE if
newObj is a replacement document.
|
FALSE |
upsert | boolean |
If filter does not match an existing document,
insert a single document. The document will be
created from newObj if it is a replacement
document (i.e. no update operators); otherwise, the operators in
newObj will be applied to
filter to create the new document.
|
FALSE |
Эта функция не возвращает значения после выполнения.
Версия | Описание |
---|---|
1.2.0 | Added the "collation" option. |
Пример #1 MongoDB\Driver\BulkWrite::update() example
<?php
$bulk = new MongoDB\Driver\BulkWrite;
$bulk->update(
['x' => 2],
['$set' => ['y' => 3]],
['multi' => false, 'upsert' => false]
);
$manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');
$result = $manager->executeBulkWrite('db.collection', $bulk);
?>