首页 文章

使用php更新mongodb中的记录

提问于
浏览
0

我想更新一条记录,我已经在mongodb中知道了它的_id . 我跟着这个:MongoDB $set not updating record

$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

我的查询有什么问题?先感谢您!

2 回答

  • 0

    用任意数字设置$ idVal并尝试..

    例:

    $idVal =123456;
    
    $new_data =array('$set'=> array("Domain"=>$domain), 
    array("author"=>$author),array("title"=>$title));
    
    $collectionList->update(array("_id"=>$idVal), $new_data);
    
  • 0

    您指定了错误的更新数据 . 如果你仔细看看 $new_data 数组,你会发现它是一个包含3个键的数组:

    $new_data = array(
        '$set' => array("Domain"=>$domain),
        0 => array("author"=>$author),
        1 => array("title"=>$title)
    );
    

    's why you'得到了错误"Unknown modifier: 0",因为0不是mongodb更新运算符 .

    在你的情况下 $new_data 数组应该是:

    $new_data = array(
        '$set' => array(
            "Domain"=>$domain, 
            "author"=>$author,
            "title"=>$title
        )
    );
    

相关问题