今天在用ThinkPHP对MongoDB中的数据更新时,发现其会更新所有匹配的数据,在PHP MongoDB手册中找到option中可以设置multiple,即使加上了这个条件,依旧不能生效,还是会替换全部匹配的文档:
$where = array (
'k' => 'v'
);
$data = array (
'aaa' => 'bbbb'
);
$options = array (
'multiple' => FALSE
);
$mongo->where($where)->save($data,$options);