Добавить операцию вставки в порцию

# MongoDB\Driver\BulkWrite::insert

(mongodb >=1.0.0)

MongoDB\Driver\BulkWrite::insert — Добавить операцию вставки в порцию

### Описание

public function MongoDB\Driver\BulkWrite::insert(array|object `$document`): mixed

Добавляем операцию вставки в MongoDB\Driver\BulkWrite.

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

`document` (array|object)
  Документ для вставки.

### Возвращаемые значения

Возвращает `_id` добавленного документа. Если в `document` не был задан `_id`, будет возвращён MongoDB\BSON\ObjectId, сгенерированный для вставки.

### Ошибки

- При ошибке парсинга аргумента метод выбрасывает исключение MongoDB\Driver\Exception\InvalidArgumentException.

### Список изменений

Версия | Описание
--- | ---
PECL mongodb 1.3.0 | Всегда возвращается `_id` для добавленного документа. Ранее метод возвращал значение только в случае если MongoDB\BSON\ObjectId был создан.

### Примеры

Пример #1 Пример использования MongoDB\Driver\BulkWrite::insert()

    <?php

    $bulk = new MongoDB\Driver\BulkWrite;

    $doc1 = ['x' => 1];
    $doc2 = ['_id' => 'custom-id', 'x' => 2];
    $doc3 = ['_id' => new MongoDB\BSON\ObjectId('0123456789abcdef01234567'), 'x' => 3];

    $id1 = $bulk->insert($doc1);
    $id2 = $bulk->insert($doc2);
    $id3 = $bulk->insert($doc3);

    var_dump($id1, $id2, $id3);

    $manager = new MongoDB\Driver\Manager('mongodb://localhost:27017');
    $result = $manager->executeBulkWrite('db.collection', $bulk);

    ?>

Вывод приведённого примера будет похож на:

    object(MongoDB\BSON\ObjectId)#3 (1) {
      ["oid"]=>
      string(24) "67f58058d1a0aa2fd80d55d0"
    }
    string(9) "custom-id"
    object(MongoDB\BSON\ObjectId)#4 (1) {
      ["oid"]=>
      string(24) "0123456789abcdef01234567"
    }

### Смотрите также

- MongoDB\Driver\Manager::executeBulkWrite() - Выполняет операции записи
- MongoDB\Driver\WriteResult
- MongoDB\BSON\ObjectId
- MongoDB\BSON\Persistable

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