我在mongo db collection中有以下内容,
{ "_id" : ObjectId("5052f343381ef8bc10000011"), "first_name" : "Tadataka", "midle_name" :
"", "last_name" : "Yamada", "title" : "Independent Director", "biogra
phy" : "Dr. Tadataka Yamada, M.D., is Independent Director of Agilent Technologi
es Inc., ", "rank" : " ", "department" : " ", "current" : "true", "company_id" : ObjectId("50072714b4a6deba100051d3"
) } }
Run Code Online (Sandbox Code Playgroud)
当我尝试为少数字段更新上述内容并且如果不存在则插入新字段时,现有字段将被覆盖.这是我的代码,
$mycollection->update(array("_id" => $id), array('$set' => array("first_name" => $first_name, "updated_at" => $uat));
Run Code Online (Sandbox Code Playgroud)
我得到的结果是
{ "_id" : ObjectId("5052f343381ef8bc10000011"), "first_name" : "Tadataka", "updated_at" : 134567894 }
Run Code Online (Sandbox Code Playgroud)
而不是只更新值,我的整个内容被覆盖,我失踪的地方.
试试这样吧
$mycollection->update(
array("_id" => $id),
array('$set' => array("first_name" => $first_name, "updated_at" => $uat)),
array("upsert" => true)
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14708 次 |
| 最近记录: |