使用php删除mongodb中的文档的问题

时间:2012-02-08 06:39:18

标签: php mongodb

我尝试使用php删除mongodb中的文档,我失败了,我得到了警告:

  

警告:MongoCollection :: remove()要求参数2为布尔值,给定数组为

$mongo = new Mongo();
$db = $mongo->test; 
$collection = $db->subscribers;
$collection->remove(array( 'LISTID' => 49));

你能告诉我导致错误的原因吗? 我phpinfo()显示:

mongo
MongoDB Support enabled
Version     1.0.4+

Directive   Local Value Master Value
mongo.allow_persistent  On  On
mongo.auto_reconnect    On  On
mongo.chunk_size    262144  262144
mongo.cmd   $   $
mongo.default_host  localhost   localhost
mongo.default_port  27017   27017
mongo.utf8  1   1

奇怪的是,文档说这个函数看起来像:

public mixed MongoCollection::remove ( array $criteria [, array $options = array() ] )

2 个答案:

答案 0 :(得分:3)

您需要指定删除选项:

$collection->remove(array('type' => 94), array("justOne" => true));

有关详细信息,请参阅the online manual

答案 1 :(得分:2)

您似乎使用的是旧版本。从手册

  

1.0.5将第二个参数更改为选项数组。在1.0.5之前,第二个参数是一个布尔值,表示" justOne"选项,没有安全的选择。

将代码升级或更改为

$collection->remove(array('LISTID' => 49), false);