PHP MongoDB $无法正常工作

时间:2012-07-15 03:58:14

标签: php mongodb exslt

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

我想知道为什么我的$ exists查询不能与PHP一起工作,而Mongodb如果有人能指出我正确的方向会有所帮助。

好吧在收藏数据库中没有名为phonenumber的行,如果没有phonenumber,我希望它插入一个,但是如果有phonenumber则不做任何事情。

3 个答案:

答案 0 :(得分:10)

您有几个语法问题。

  1. 您在第二级缺少数组
  2. 您的运营商需要单引号($exist
  3. 这是一个清理过的样本:

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

答案 1 :(得分:3)

这应该是:

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

响应盖茨VP中的阵列级别太多了

答案 2 :(得分:0)

尝试这样做不等于运算符

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