我试图让它在PHP上工作,但它不起作用。我正在使用:
$newData = array(
'$push' => array(
"$array" => $obj,
'$size' => 10
)
);
$collection->update(array("_id" => new MongoId("$IDIn")), $newData);
现在,它显然无法正常工作。我认为原因是这两者中的一个:
任何人都有这个问题吗?
提前致谢。
答案 0 :(得分:0)
您可以在此处查看使用此功能的示例,来自JIRA:https://github.com/mongodb/mongo/commit/b3687e73545f6d0d04f1992119308e7ab80d44e1
这个特别感兴趣:
t.update( {_id:1}, { $push: { x: { $each: [ {a:3} ], $slice:-5, $sort: {a:1} } } } )
在该页面的下方,他们记录了代码,即:
// If we're in the "push all" case with slice, we have to decide how much of each
// of the existing and parameter arrays to copy to the final object.
你可以在JIRA的底部找到这些类型的金块,你会看到类似的东西:
自动添加了评论 - 2013年1月3日05:26:11 UTC 作者:{u'date':u'2013-01-03T17:19:13Z',你'':u'Alberto Lerner',你'email':u'alerner @ 10gen.com'} 消息:SERVER-991 SERVER-8008用$ slice替换$ trimTo(但现在只接受负片)。 科:硕士 https://github.com/mongodb/mongo/commit/b3687e73545f6d0d04f1992119308e7ab80d44e1