MongoDB\Driver\WriteResult::getWriteErrors
(mongodb >=1.0.0)
MongoDB\Driver\WriteResult::getWriteErrors — Returns any write errors that occurred
参数
此函数没有参数。
返回值
Returns an array of MongoDB\Driver\WriteError objects for any write errors encountered during the write operation. The array will be empty if no write errors occurred.
错误/异常
- Throws MongoDB\Driver\Exception\InvalidArgumentException on argument parsing errors.
示例
示例 #1 MongoDB\Driver\WriteResult::getWriteErrors() with a single error
<?php
$manager = new MongoDB\Driver\Manager;
/* By default, bulk write operations are executed serially in order and
* execution will stop after the first error.
*/
$bulk = new MongoDB\Driver\BulkWrite;
$bulk->insert(['_id' => 1]);
$bulk->insert(['_id' => 2]);
$bulk->insert(['_id' => 2]);
$bulk->insert(['_id' => 3]);
$bulk->insert(['_id' => 4]);
$bulk->insert(['_id' => 4]);
try {
$result = $manager->executeBulkWrite('db.collection', $bulk);
} catch (MongoDB\Driver\Exception\BulkWriteException $e) {
var_dump($e->getWriteResult()->getWriteErrors());
}
?>
以上示例的输出类似于:
array(1) { [0]=> object(MongoDB\Driver\WriteError)#5 (4) { ["message"]=> string(81) "E11000 duplicate key error collection: db.collection index: _id_ dup key: { : 2 }" ["code"]=> int(11000) ["index"]=> int(2) ["info"]=> NULL } }
示例 #2 MongoDB\Driver\WriteResult::getWriteErrors() with multiple errors
<?php
$manager = new MongoDB\Driver\Manager;
/* The "ordered" option may be used to allow bulk write operations to continue
* executing after the first error is encountered.
*/
$bulk = new MongoDB\Driver\BulkWrite(['ordered' => false]);
$bulk->insert(['_id' => 1]);
$bulk->insert(['_id' => 2]);
$bulk->insert(['_id' => 2]);
$bulk->insert(['_id' => 3]);
$bulk->insert(['_id' => 4]);
$bulk->insert(['_id' => 4]);
try {
$result = $manager->executeBulkWrite('db.collection', $bulk);
} catch (MongoDB\Driver\Exception\BulkWriteException $e) {
var_dump($e->getWriteResult()->getWriteErrors());
}
?>
以上示例的输出类似于:
array(2) { [0]=> object(MongoDB\Driver\WriteError)#5 (4) { ["message"]=> string(81) "E11000 duplicate key error collection: db.collection index: _id_ dup key: { : 2 }" ["code"]=> int(11000) ["index"]=> int(2) ["info"]=> NULL } [1]=> object(MongoDB\Driver\WriteError)#6 (4) { ["message"]=> string(81) "E11000 duplicate key error collection: db.collection index: _id_ dup key: { : 4 }" ["code"]=> int(11000) ["index"]=> int(5) ["info"]=> NULL } }
+添加备注
用户贡献的备注
此页面尚无用户贡献的备注。
备份地址:http://www.lvesu.com/blog/php/mongodb-driver-writeresult.getwriteerrors.php