MongoDB php Spatial天文数据这有什么问题?

时间:2013-02-12 04:03:48

标签: php mongodb spatial

我想在边界框内检索数据((ra_min,dec_min),(ra_max,dec_max))。 谁能告诉我下面有什么问题?

PHP代码和数据结构如下。感谢......

结构:

    {
        "filter": "E", 
        "loc": {
            "dec": 130, 
            "ra": 15
        }, 
        "path": "00015+00130E.jpeg"
    }, 
    {
        "filter": "Z", 
        "loc": {
            "dec": 130, 
            "ra": 15
        }, 
        "path": "00015+00130Z.jpeg"
    },

代码:

$lowerLeft = array("ra"=>$RA_min - $ra_offset, "dec"=>$DEC_min - $dec_offset);
$upperRight= array("ra"=>$RA_max + $ra_offset, "dec"=>$DEC_max + $dec_offset);

$cond = array("loc" => array('$within' => array('$box' => $lowerLeft, $upperRight)));
$cursor = $collection->find($cond);

1 个答案:

答案 0 :(得分:0)

我认为问题出现在$ box使用

$ box用法示例:

$cursor = $collection->find( array( 'loc'=>array('$within'=> array('$box'=>array(array(0,0), array(100,100) ) ) ) ));

这将返回包含点的所有文档:[0,0],[0,100],[100,0]和[100,100]。

使用print_r($ cond);在find()之前;用于查看显示问题所在的数组值