Php/docs/mongoresultexception.getdocument

提供:Dev Guides
< Php
移動先:案内検索

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."
}