(mongodb >=2.1.0)
MongoDB\Driver\Exception\BulkWriteCommandException::getWriteErrors โ Returns any write errors
ๆญคๅฝๆฐๆฒกๆๅๆฐใ
An array of any MongoDB\Driver\WriteErrors that occurred during the execution of individual write operations. Array keys will correspond to the index of the write operation from MongoDB\Driver\BulkWriteCommand. This map will contain at most one entry if the bulk write was ordered.
็คบไพ #1 MongoDB\Driver\Exception\BulkWriteCommandException::getWriteErrors() example
<?php
$manager = new MongoDB\Driver\Manager;
$bulk = new MongoDB\Driver\BulkWriteCommand(['ordered' => false]);
$bulk->deleteMany('db.coll', []);
$bulk->insertOne('db.coll', ['_id' => 1]);
$bulk->insertOne('db.coll', ['_id' => 1]);
$bulk->insertOne('db.coll', ['_id' => 1]);
try {
$result = $manager->executeBulkWriteCommand($bulk);
} catch (MongoDB\Driver\Exception\BulkWriteCommandException $e) {
var_dump($e->getWriteErrors());
}
?>
ไปฅไธ็คบไพ็่พๅบ็ฑปไผผไบ๏ผ
array(2) { [2]=> object(MongoDB\Driver\WriteError)#5 (4) { ["message"]=> string(78) "E11000 duplicate key error collection: db.coll index: _id_ dup key: { _id: 1 }" ["code"]=> int(11000) ["index"]=> int(2) ["info"]=> object(stdClass)#6 (0) { } } [3]=> object(MongoDB\Driver\WriteError)#7 (4) { ["message"]=> string(78) "E11000 duplicate key error collection: db.coll index: _id_ dup key: { _id: 1 }" ["code"]=> int(11000) ["index"]=> int(3) ["info"]=> object(stdClass)#8 (0) { } } }