PHP MongoDB $exist无法正常工作


PHP MongoDB $exist not working

$collection->update(array("_id"=>new MongoId($uid), "phonenumber"=> $exist => array(FALSE),$set("phone"=>"1223444"));

我想知道为什么我的$exist查询不适用于 PHP,以及 Mongodb,如果有人能指出我正确的方向,那将是有帮助的。

好的,在集合数据库中没有称为电话号码的行,如果没有电话号码,我希望它插入一个,但如果有电话号码,请不要执行任何操作。

您有几个语法问题。

  1. 您在第二级缺少数组
  2. 您的操作员需要用单引号括起来 ( $exist (

下面是一个清理过的示例:

$collection->update(
    array( "_id"=> new MongoId($uid), 
           array("phonenumber"=> array('$exists' => false))
         ),
    array( '$set' => array("phone"=>"1223444") )
);

这应该是:

$collection->update(
    array( 
        "_id"         => new MongoId($uid), 
        "phonenumber" => array('$exists' => false)
    ),
    array( '$set' => array("phone"=>"1223444") )
);

响应中的数组级别太多 盖茨副总裁

尝试这样做不等于运算符

$collection->update(
    array( "_id"=> new MongoId($uid)),
    array( '$set' => array("phone"=>"1223444") )
);