Заменяет один документ коллекции

# Collection::replaceOne

(No version information available, might only be in Git)

Collection::replaceOne — Заменяет один документ коллекции

### Описание

public function mysql_xdevapi\Collection::replaceOne(string `$id`, string `$doc`): mysql_xdevapi\Result

Обновляет (или заменяет) документ, по идентификатору, если он существует.

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

`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);

    ?>

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open