我想在数组appusergoogleid中添加一个新元素。但我收到错误,我在数组中添加对象。
$id=array("id"=>$appusergoogleid);
$collection->update(array("appuseremail"=>$appuseremail),array('$push' => array('appusergoogleid'=>$id)));
这是我插入的json
{ "_id" : ObjectId("55cc982946449835298b4567"), "appuserfirstname" : "demo", "appuserlastname" : " appuserlastname", "appusermiddlename" : "xyz", "appuseremail" : "abc@gmail.com", "follows" : "1", "appusergoogleid" : { "id" : "wemhjgh" }, "usercreationdate" : ISODate("2015-08-13T18:44:17Z"), "status" : "0" }
我希望每当我在appusergoogleid中添加内容时,它都会在那里创建一个数组而不是对象。
答案 0 :(得分:0)
$filter = array('_id'=>$id));
$update = array('$addToSet'=>array('done_by'=>'2'));
$q->update($filter,$update);
当您需要更新时,请使用
$addToSet
,以避免重复插入 导致出现多个条目。