(PECL mongo >=1.3.0)
Retrieve the full result document
public array MongoResultException::getDocument ( void )
Retrieves the full error result document.
Returns:
The full result document as an array, including partial data if available and additional keys.
Examples:
MongoResultException::getDocument() example
<?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); } ?>
The above examples will output something similar to:
$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." }
Please login to continue.