проблемы с удалением документа в mongodb с использованием php - PullRequest
3 голосов
/ 08 февраля 2012

Я пытаюсь удалить документ в mongodb, используя php, у меня ничего не получается, и я получаю разрешение:

Предупреждение: 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 ]

3 голосов
/ 08 февраля 2012

Вам необходимо указать параметры удаления:

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

для получения дополнительной информации см. электронное руководство

2 голосов
/ 08 февраля 2012

Вы используете очень старую версию. Из руководства

1.0.5 Изменен второй параметр в массив параметров. До версии 1.0.5 вторым параметром был логический параметр, указывающий опцию «justOne», и безопасной опции не было.

Либо обновите, либо измените код на

$collection->remove(array('LISTID' => 49), false);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...