Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Can';t在MongoDB集合中向现有文档追加新数据_Php_Mongodb - Fatal编程技术网

Php Can';t在MongoDB集合中向现有文档追加新数据

Php Can';t在MongoDB集合中向现有文档追加新数据,php,mongodb,Php,Mongodb,我尝试使用php输入权重和墨水字段以及相关数据。但这会给出“出错”的错误信息。我要做的是向所选的现有mongoDB文档添加权重和墨水字段 $insRec = new MongoDB\Driver\BulkWrite; $insRec->update(['id'=>new MongoDB\BSON\ObjectID($b['$oid'])],['$push' =>['ink' =>$ink, 'weight'=>$weight]], ['multi' =&

我尝试使用php输入权重和墨水字段以及相关数据。但这会给出“出错”的错误信息。我要做的是向所选的现有mongoDB文档添加权重和墨水字段

$insRec       = new MongoDB\Driver\BulkWrite;
$insRec->update(['id'=>new MongoDB\BSON\ObjectID($b['$oid'])],['$push' =>['ink' =>$ink, 'weight'=>$weight]], ['multi' => false, 'upsert' => false]);
$writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 1000);
$result = $manager->executeBulkWrite('sampledb.style', $insRec, $writeConcern);
print_r($result);
   if($result->getModifiedCount()){
       echo "OK";
    }else{
            echo "Something Wrong";

$b['$oid'])正确给出了相关的对象id。唯一的问题是,追加不起作用。您能否找到具有相同查询筛选器的记录,即查询部分完全正常?数据库日志中是否有任何内容?您缺少要在其中插入墨迹和权重文档的数组的名称。应该类似于
['$push'=>[arrayname=>['ink'=>$ink',weight'=>$weight]]]
。在旁注中,请尝试打印从mongo返回的错误,而不是一些一般错误。是否会有错误?我猜只是“什么都不匹配”