$或要求非空数组异常

时间:2013-12-01 14:36:01

标签: php mongodb

我需要从Mongodb数据库获取数据,我的代码如下,

    $collection = $global["dbmongo"] -> person_uuid;
    $rows = $collection->find(array("p_uuid" => $global['uuid'],
            '$or'=>array(

                    'expiry_date'=>null,
                    'expiry_date'=> '0000-01-01 00:00:00'
            )
    )
    );

但它显示,

  

$或需要非空数组

如果我写echo "count".$count; var_dump($rows); 然后输出为countArrayobject(MongoCursor)#48 (0) { },除了上面的输出 请帮帮我。

1 个答案:

答案 0 :(得分:2)

问题出在这一部分:

array(
  'expiry_date'=>null,
  'expiry_date'=> '0000-01-01 00:00:00'
)

键是相同的,因为这个键会覆盖另一个键。您可以使用$in运算符并执行类似

的操作
'expiry_date' => array(
  '$in' => array(null, '0000-01-01 00:00:00')
)

此外,很难理解你到底在找什么。