PHP MongoDB,更新文档而不删除其余部分

use*_*108 7 mongodb

我正在尝试使用PHP和update()函数更新mongo文档.但是,当我这样做时,它用我想要更新的值替换WHOLE文档.我怎样才能解决这个问题?

我到目前为止编写的代码:http://twaddlr.com/view/73 (向下滚动到"更新"功能.这是我为我的网站编写的数据库包装器)

The*_*heo 16

关键是$set在更新中使用,例如,而不是这个(抱歉使用JavaScript语法,不确定确切的PHP驱动程序语法):

db.my_collection.update({hello: "world"}, {foo: "bar"})
Run Code Online (Sandbox Code Playgroud)

你做

db.my_collection.update({hello: "world"}, {$set: {foo: "bar"}})
Run Code Online (Sandbox Code Playgroud)

如果使用$set,则仅更新指定的属性,不会替换整个文档.

您可以在文档中阅读更多相关信息,请访问:http://www.mongodb.org/display/DOCS/Updating#Updating-ModifierOperations

编辑:查看您的代码,这正是您在addRow方法中所做的.做同样的事情update.