MongoDB::lastError

(PECL mongo >=0.9.5)

MongoDB::lastError直近のデータベース操作でエラーが発生したかどうかを調べる

説明

public MongoDB::lastError ( void ) : array

このメソッドは次のコードと同じ意味です。

<?php

public function lastError() {
    return 
$this->command(array('getlasterror' => 1));
}

?>

パラメータ

この関数にはパラメータはありません。

返り値

エラーがあった場合はそれを返します。

例1 MongoDB::lastError()NULL の例

<?php
$db
->resetError();
var_dump($db->lastError());
?>

上の例の出力は、 たとえば以下のようになります。

array(3) {
  ["err"]=>
  NULL
  ["n"]=>
  int(0)
  ["ok"]=>
  float(1)
}

例2 MongoDB::lastError() のキー重複の例

<?php
$c 
$db->selectCollection("foo");

// 同じ _id のふたつのドキュメントを追加します
$c->insert(array("_id" => 1));
$c->insert(array("_id" => 1));

var_dump($db->lastError());
?>

上の例の出力は、 たとえば以下のようになります。

array(3) {
  ["err"]=>
  string(64) "E11000 duplicate key errorindex: foo.foo.$_id_  dup key: { : 1 }"
  ["n"]=>
  int(0)
  ["ok"]=>
  float(1)
}