Añade una operación de inserción al lote masivo

# MongoDB\Driver\BulkWrite::insert

(mongodb >=1.0.0)

MongoDB\Driver\BulkWrite::insert — Añade una operación de inserción al lote masivo

### Descripción

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

Añade una operación de inserción a la MongoDB\Driver\BulkWrite.

### Parámetros

`documento` (array|object)
  Un documento a insertar.

### Valores devueltos

Devuelve el `_id` del documento insertado. Si el `documento` no tenía un `_id`, se devolverá el MongoDB\BSON\ObjectId generado para la inserción.

### Errores/Excepciones

- Lanza una excepción MongoDB\Driver\InvalidArgumentException en caso de error durante el análisis de un argumento.

### Historial de cambios

Versión | Descripción
--- | ---
PECL mongodb 1.3.0 | Siempre se devuelve el `_id` del documento insertado. Anteriormente, el método solo devolvía un valor si se generaba un MongoDB\BSON\ObjectId.

### Ejemplos

Ejemplo #1 Ejemplo de MongoDB\Driver\BulkWrite::insert()

    <?php

    $bulk = new MongoDB\Driver\BulkWrite;

    $doc1 = ['x' => 1];
    $doc2 = ['_id' => 'id-personalizado', '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);

    ?>

Resultado del ejemplo anterior es similar a:

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

### Ver también

- MongoDB\Driver\Manager::executeBulkWrite() - Ejecuta una o varias operaciones de escritura
- MongoDB\Driver\WriteResult
- MongoDB\BSON\ObjectId
- MongoDB\BSON\Persistable

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