我尝试使用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() ] )
答案 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);