Я хочу обновить запись, и я уже знал ее _id в mongodb. Я последовал за этим: MongoDB $ set не обновляет запись
$idVal ="some value";
$new_data =array('$set'=> array("Domain"=>$domain),
array("author"=>$author),array("title"=>$title));
$collectionList->update(array("_id"=>$idVal), $new_data);
Сообщение об ошибке - сообщение об ошибке127.0.0.1: 27017: Неизвестный модификатор: 0
Что не так с моим запросом? заранее спасибо!
Вы указали неверные данные обновления. Если вы посмотрите более $new_data
массив $new_data
, вы заметите, что это массив с 3 ключами:
$new_data = array(
'$set' => array("Domain"=>$domain),
0 => array("author"=>$author),
1 => array("title"=>$title)
);
Вот почему у вас есть ошибка "Неизвестный модификатор: 0", потому что 0 не является оператором обновления mongodb.
В вашем случае массив $new_data
должен быть:
$new_data = array(
'$set' => array(
"Domain"=>$domain,
"author"=>$author,
"title"=>$title
)
);
Установите $ idVal с любым номером и попробуйте.
Пример:
$idVal =123456;
$new_data =array('$set'=> array("Domain"=>$domain),
array("author"=>$author),array("title"=>$title));
$collectionList->update(array("_id"=>$idVal), $new_data);