MongoResultException::getDocument
(PECL mongo >=1.3.0)
MongoResultException::getDocument — Извлекает весь результирующий документ ошибки
Описание
public MongoResultException::getDocument
(
) : array
Извлекает весь результирующий документ ошибки.
Список параметров
У этой функции нет параметров.
Возвращаемые значения
Полный результирующий документ в виде массива, включая, если доступно, частичные данные и дополнительные ключи.
Примеры
Пример #1 Пример использования MongoResultException::getDocument()
<?php
$mc = new MongoClient("localhost");
$c = $mc->selectCollection("test", "test");
$c->insert(array(
"name" => "Next promo",
"inprogress" => false,
"priority" => 0,
"tasks" => array( "select product", "add inventory", "do placement"),
) );
$c->insert(array(
"name" => "Biz report",
"inprogress" => false,
"priority" => 1,
"tasks" => array( "run sales report", "email report" )
) );
$c->insert(array(
"name" => "Biz report",
"inprogress" => false,
"priority" => 2,
"tasks" => array( "run marketing report", "email report" )
),
array("w" => true)
);
try {
$retval = $c->findAndModify(
array("inprogress" => false, "name" => "Biz report"),
array('$set' => array('$set' => array('inprogress' => true, "started" => new MongoDate()))),
null,
array(
"sort" => array("priority" => -1),
"new" => true,
)
);
} catch(MongoResultException $e) {
echo $e->getMessage(), "\n";
$res = $e->getDocument();
var_dump($res);
}
?>
Результатом выполнения данных примеров будет что-то подобное:
$set is not valid for storage. array(3) { ["lastErrorObject"]=> array(5) { ["connectionId"]=> int(6) ["err"]=> string(30) "$set is not valid for storage." ["code"]=> int(52) ["n"]=> int(0) ["ok"]=> float(1) } ["ok"]=> float(0) ["errmsg"]=> string(30) "$set is not valid for storage." }