(mongodb >=1.0.0)
MongoDB\Driver\WriteResult::getUpsertedIds — Возвращает массив идентификаторов для объединённых документов
Сигнатура функции не содержит параметров.
Возвращает массив идентификаторов (т.е. значения полей "_id")
для объединённых документов. Ключи массива будут соответствовать индексу
операции записи (из MongoDB\Driver\BulkWrite),
ответственной за слияние.
Пример #1 Пример использования MongoDB\Driver\WriteResult::getUpsertedIds()
<?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->getUpsertedIds());
?>Вывод приведённого примера будет похож на:
array(2) {
[2]=>
object(MongoDB\BSON\ObjectId)#4 (1) {
["oid"]=>
string(24) "580e62a224f2302f191b880b"
}
[3]=>
object(MongoDB\BSON\ObjectId)#5 (1) {
["oid"]=>
string(24) "580e62a224f2302f191b880c"
}
}