(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)» クエリ述語。 空の述語を指定すると、コレクション内のすべてのドキュメントにマッチします。
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 |
» Collation は、文字列比較の際の言語固有のルールを指定するものです。たとえば、大文字小文字やアクセント記号の扱いを指定できます。 collation を指定するときには "locale" フィールドが必須となります。それ以外の collation フィールドはすべて任意指定です。 各フィールドについての説明は » Collation のドキュメント を参照ください。 collation が未指定で collection のデフォルトの collation が設定されている場合は、コレクションが持っている collation を用いて操作を実行します。 コレクションや操作にも collation が指定されていない場合は、MongoDB は単純にバイナリ比較を行います。 これは、今までのバージョンでの文字列比較と同じ方法です。 このオプションは MongoDB 3.4 以降で使用可能です。それより前のバージョンのサーバー上で指定すると、実行時に例外が発生します。 |
|
multi | bool | Update only the first matching document (multi=false), or all matching documents (multi=true). | FALSE |
upsert | bool |
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');
$writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000);
$result = $manager->executeBulkWrite('db.collection', $bulk, $writeConcern);
?>