【发布时间】:2018-03-20 10:18:54
【问题描述】:
我一直在 SO 上冲浪,但我还没有找到我的问题的答案(一些类似的),所以我在这里问。自 2 周以来,我一直在使用 mongodb 和 php,并且我有一个数据库,我想将新数据添加到其中一个嵌入式/嵌套文档中,但我做不到。
这是我目前所拥有的。
{
"_id" : ObjectId("5ab0dc4fb57dce17e0002c5c"),
"meter" : "meter_2",
"data" : {
"magnitude1" : {
"date" : "05/03/2013 08:13:18",
"value" : 200
},
"magnitude2" : {
"date" : "30/06/2014 23:46:05",
"value" : 126
}
}
}
现在,我正在尝试将新数据添加到子文档magnitude。像这样的:
{
"_id" : ObjectId("5ab0dc4fb57dce17e0002c5c"),
"meter" : "meter_2",
"data" : {
"magnitude1" : {
"date" : "05/03/2013 08:13:18",
"value" : 200,
"somedata" : "somevalue"
},
}
}
我已经尝试了很多东西,就像下面这个一样,但显然它不会插入任何数据。
$center->updateOne(
['_id' => new \MongoDB\BSON\ObjectID('5ab0dc4fb57dce17e0002c5c'), 'data.magnitude1'],
['$set' => ['somedata' => 'somevalue']]
);
谁能帮我解决这个问题?
【问题讨论】:
-
试试
$center->updateOne( ['_id' => new \MongoDB\BSON\ObjectID('5ab0dc4fb57dce17e0002c5c')], ['$set' => ['data.magnitude1.somedata' => 'somevalue']] ); -
@Veeram 它有效!非常感谢!!!