2

我如何在 php 中使用 getLastError() 来检查我的保存方法是否插入到 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("这里发生了什么?");

那里什么也没有,返回的getLastError是 MongoDB ( http://www.php.net/manual/en/mongodb.lasterror.php ) 的最后一个错误。它也用于 MongoDB 类 (atm)。

您不必那样使用它,而是可以这样做:

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

这将从函数返回一个数组,详细说明它是否实际插入。可以通过阅读此页面找到数组的详细信息:

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

于 2012-11-28T13:49:30.337 回答