In case you are trying to add an index to a collection, and the index is already there, the value of getInsertedCount() depends on the MongoDB server version.
For example, MongoDB version 2.4 consider the index as inserted, but version 3.6 does not.(mongodb >=1.0.0)
MongoDB\Driver\WriteResult::getInsertedCount β Returns the number of documents inserted (excluding upserts)
Π£ ΡΡΡΡ ΡΡΠ½ΠΊΡΡΡ Π½Π΅ΠΌΠ°Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡΠ².
Returns the number of documents inserted (excluding upserts).
| ΠΠ΅ΡΡΡΡ | ΠΠΏΠΈΡ |
|---|---|
| PECL mongodb 2.0.0 |
This method now throws an exception when called for an unacknowledged write instead of returning |
ΠΡΠΈΠΊΠ»Π°Π΄ #1 MongoDB\Driver\WriteResult::getInsertedCount() example
<?php
$manager = new MongoDB\Driver\Manager;
$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert(['x' => 1]);
$bulk->update(['x' => 1], ['$set' => ['y' => 3]]);
$bulk->update(['x' => 2], ['$set' => ['y' => 1]], ['upsert' => true]);
$bulk->update(['x' => 3], ['$set' => ['y' => 2]], ['upsert' => true]);
$bulk->delete(['x' => 1]);
$result = $manager->executeBulkWrite('db.collection', $bulk);
var_dump($result->getInsertedCount());
?>ΠΠΎΠ΄Π°Π½ΠΈΠΉ Π²ΠΈΡΠ΅ ΠΏΡΠΈΠΊΠ»Π°Π΄ Π²ΠΈΠ²Π΅Π΄Π΅:
int(1)