(No version information available, might only be in Git)
Collection::replaceOne — Заменяет один документ коллекции
Обновляет (или заменяет) документ, по идентификатору, если он существует.
id
Идентификатор документа для замены или обновления. Обычно это _id, который был сгенерирован MySQL Server при добавлении записи.
doc
Документ коллекции для обновления или замены документа, соответствующего параметру id.
Документ может быть либо объектом документа, либо корректной строкой JSON, описывающей новый документ.
Объект Result, который можно использовать для запроса количества затронутых элементов и количества предупреждений, сгенерированных операцией.
Пример #1 Пример использования mysql_xdevapi\Collection::replaceOne()
<?php
$session = mysql_xdevapi\getSession("mysqlx://user:password@localhost");
$session->sql("DROP DATABASE IF EXISTS addressbook")->execute();
$session->sql("CREATE DATABASE addressbook")->execute();
$schema = $session->getSchema("addressbook");
$collection = $schema->createCollection("people");
$result = $collection->add('{"name": "Alfred", "age": 18, "job": "Butler"}')->execute();
// Обычно _id известен другими способами,
// но для этого примера давайте извлечём сгенерированный идентификатор и используем его
$ids = $result->getGeneratedIds();
$alfred_id = $ids[0];
// ...
$alfred = $collection->getOne($alfred_id);
$alfred['age'] = 81;
$alfred['job'] = 'Guru';
$collection->replaceOne($alfred_id, $alfred);
?>