函数名:MongoDB\Driver\BulkWrite::update()
函数功能:在批量写操作中执行更新操作。
适用版本:MongoDB PHP扩展版本 1.0.0+
用法:
public function update(
array|object $filter,
array|object $update,
array $options = []
): void
参数说明:
- $filter:更新操作的筛选条件,可以是一个关联数组或对象。
- $update:更新操作的字段和值,可以是一个关联数组或对象。
- $options:可选参数,用于指定更新操作的选项,是一个关联数组。
选项参数说明:
- upsert (bool):如果设置为true,则在找不到匹配的文档时插入一个新的文档。默认为false。
- multi (bool):如果设置为true,则更新所有匹配的文档。默认为false。
示例:
// 创建BulkWrite实例
$bulk = new MongoDB\Driver\BulkWrite;
// 设置更新条件和字段
$filter = ['name' => 'John Doe'];
$update = ['$set' => ['age' => 30]];
// 执行更新操作
$bulk->update($filter, $update);
// 执行批量写操作
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$manager->executeBulkWrite('db.collection', $bulk);
以上示例中,我们创建了一个BulkWrite实例,并设置了更新条件和字段。然后,我们将更新操作添加到BulkWrite实例中。最后,我们使用MongoDB\Driver\Manager的executeBulkWrite方法执行批量写操作。这样,满足条件的文档将被更新。