2

php 内で getLastError() を使用して、save メソッドが mongo に挿入されているかどうかを確認するにはどうすればよいですか?

次のようにデータベースをセットアップしました。

$this->databaseEngine = $app['mongo'];
$this->db = $this->databaseEngine->dbname;
$this->collection = $this->db->collectionname;

私の挿入クエリは次のようになります。

$query = array(
    'fieldname' => $fieldname
);
$this->collection->insert($query);

次に、 getLastError() を使用して、正しく挿入されているかどうか、そうでない場合はその理由を確認したいと思います。しかし、それを実装する方法がわかりません。

挿入後に使用しますか:

$this->collection->getLastError("what goes here?");

乾杯。

アップデート

私は最終的にこれを使用して最後のエラーを取得しました:

echo '<pre>' . print_r($this->databaseEngine->lastError(), true) . '</pre>';

Sammaye の方法も同様に機能します。以下を参照してください。

4

1 に答える 1

1

$ this-> collection-> getLastError( "何がここにありますか?");

そこには何もありません。MongoDB( http://www.php.net/manual/en/mongodb.lasterror.phpgetLastError )からの最後のエラーが返されます。また、MongoDBクラス(atm)でも使用されます。

そのように使用する必要はありませんが、代わりに次のことができます。

$this->collection->insert($query, ARRAY('safe' => TRUE));

これにより、実際に挿入されたかどうかを詳細に示す配列が関数から返されます。アレイの詳細は、次のページを読んで見つけることができます。

http://www.php.net/manual/en/mongocollection.insert.php

于 2012-11-28T13:49:30.337 に答える