Ajoute une opération d'insertion au lot

# MongoDB\Driver\BulkWrite::insert

(mongodb >=1.0.0)

MongoDB\Driver\BulkWrite::insert — Ajoute une opération d'insertion au lot

### Description

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

Ajoute une opération d'insertion au MongoDB\Driver\BulkWrite.

### Liste de paramètres

`document` (array|object)
  Le document à insérer.

### Valeurs de retour

Renvoie l'`_id` du document inséré. Si le `document` n'avait pas d'`_id`, le MongoDB\BSON\ObjectId généré pour l'insertion sera renvoyé.

### Erreurs / Exceptions

- Lance une exception MongoDB\Driver\InvalidArgumentException lors d'une erreur survenue pendant l'analyse d'un argument.

### Historique

Version | Description
--- | ---
PECL mongodb 1.3.0 | L'`_id` du document inséré est toujours renvoyé. Auparavant, la méthode ne renvoyait une valeur que si un MongoDB\BSON\ObjectId était généré.

### Exemples

Exemple #1 Exemple de 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);

    ?>

Résultat de l'exemple ci-dessus est similaire à :

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

### Voir aussi

- MongoDB\Driver\Manager::executeBulkWrite() - Exécute une ou plusieurs opérations d'écriture
- MongoDB\Driver\WriteResult
- MongoDB\BSON\ObjectId
- MongoDB\BSON\Persistable

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