Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/12.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 Mongodb GEO+$或_Php_Mongodb - Fatal编程技术网

PHP Mongodb GEO+$或

PHP Mongodb GEO+$或,php,mongodb,Php,Mongodb,我不知道这个查询有什么问题,分离查询工作正常,但使用$或显示错误数据 $range = array('$or' => array( array('loc.lat' => array('$within' => array('$centerSphere' => array( array(floatval( $la ), floatval( $long )), $max ))), 'la

我不知道这个查询有什么问题,分离查询工作正常,但使用$或显示错误数据

$range = array('$or' => 
     array(  
         array('loc.lat' => array('$within' => 
         array('$centerSphere' => 
         array( array(floatval( $la ), floatval( $long )), $max  ))),
        'language' => 'de', 'M' => 'Y')
     ),
    array('loc.c' => 'de', array('loc.m' => array('$exists' => false)) ),   
    array('loc.w' => 12, array('loc.m' => array('$exists' => false)))
));
正确格式化代码(数组),您就会看到问题所在


提示:
var\u dump($range)

什么是单独的查询?这与格式无关。问题在于Mongodb不支持带有$all或$all等的地理查询,所以它只是不支持
    array(3) {
  ["$or"]=>
  array(1) {
    [0]=>
    array(3) {
      ["loc.lat"]=>
      array(1) {
        ["$within"]=>
        array(1) {
          ["$centerSphere"]=>
          array(2) {
            [0]=>
            array(2) {
              [0]=>
              float(50.0646501)
              [1]=>
              float(19.9449799)
            }
            [1]=>
            float(0.004390090937598)
          }
        }
      }
      ["language"]=>
      string(2) "pl"
      ["M"]=>
      string(1) "Y"
    }
  }
  [0]=>
  array(2) {
    ["loc.c"]=>
    string(2) "pl"
    [0]=>
    array(1) {
      ["loc.m"]=>
      array(1) {
        ["$exists"]=>
        bool(false)
      }
    }
  }
  [1]=>
  array(2) {
    ["loc.w"]=>
    string(2) "12"
    [0]=>
    array(1) {
      ["loc.m"]=>
      array(1) {
        ["$exists"]=>
        bool(false)
      }
    }
  }
}