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)
This function has no parameters.
Returns the number of documents inserted (excluding upserts).
Version | Description |
---|---|
PECL mongodb 2.0.0 |
This method now throws an exception when called for an unacknowledged write instead of returning |
Example #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());
?>
The above example will output:
int(1)