我试图更新文档中的值,但我还没有看到一个示例,它向我展示了我需要做什么。以下是我的文档的外观:
{
"_id" : ObjectId("5429e8a53150d03d541c7a53"),
"foo" : {
"bar" : {
"0" : {
"email" : {
"0" : "bob@aol.com"
}
}
}
}
}
这当然不是我的真实目标,而是代表了结构。我如何将bob@aol.com更新为whatever@whocares.net?
另外我如何删除这个相同的元素?
另外(对于bunus积分)我将如何使用php Mongo类更新此内容?
答案 0 :(得分:0)
好的,我想通了。这是您在控制台中执行此操作的方式:
db.test.update({"foo.bar.0.email" : {"0":"bob@aol.com"} },{$set:{"foo.bar.0.email.0":"whatever@whocares.net"}});
这就是你在PHP中使用Mongo类
的方法$db = new Mongo("connection stuff");
$condition = array('foo.bar.0.email' => array('0' => 'bob@aol.com'));
$data = array('$set' => array('foo.bar.0.email.0' => 'whatever@whocares.net'));
$db->test->update($condition, $data);
我希望这对某人有所帮助,因为我花了几个小时来解决这个问题。