我想知道是否有一种方法可以在PHP中使用doctrine2和mongodb执行多边形查询。 (如文档中所示:http://www.mongodb.org/display/DOCS/Geospatial+Indexing#GeospatialIndexing-BoundsQueries)
我知道在Doctrine2中实现near,withinCenter和withinBox是可能的,并且工作正常,但多边形怎么样? http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/reference/geospatial-queries.html
答案 0 :(得分:2)
现在这样做:)
$queryBuilder
->field('loc')
->withinPolygon(array(0, 0), array(2, 0), array(0, 2));
参见60a99e5和相应的单元测试。如果提供的点少于三个,则会抛出异常,因为它不能表示多边形。