Mongodb查询到Php转换

时间:2017-01-24 07:50:41

标签: php mongodb

有人可以帮我转换这个查询的php吗?

db.job_crwaled.aggregate([{ 
"$geoNear": { 
"near": {
"type": "Point",
"coordinates": [72.86,19.07]},
"spherical": true,
"maxDistance": 5000,
"distanceField": "distance",
"query": { "title": /sales/ }
}
}
])

2 个答案:

答案 0 :(得分:1)

试试这个让我知道这项工作

$test = array(
  array('$geoNear' = array(
      'near' => array(
        'type' => 'Point',
        'coordinates' = array(72.86, 19.07)
      ),
      'spherical' => true,
      'maxDistance' => 5000,
      'distanceField' => 'distance',
      'query' => array('title' => '/sales/')
    ),
  ),
);

我不确定代码中/sales/是什么。如果那只是一个string那么它是好的,否则如果它有一些值,将它保存在变量上并用代码上的变量替换它。

如果您尝试了一些代码,请告诉我们您的代码。

答案 1 :(得分:0)

在做了很多R& D之后,我得到了解决方案:

$c = $crawlingCollection->aggregate(
    [
    [ '$geoNear'=> [
        'near'=> [
            'type'=> 'Point',
            'coordinates'=> [
                72.86,
                 19.07
            ]
        ],
        'spherical'=> true,
        'maxDistance'=> 5000,
        'distanceField'=> 'distance',
        'query' => ['title'=> array('$regex' => 'sales')]
    ]]
]
);

php正在阻止这个/ sales / keyword这就是为什么结果不会出现所以我使用$ regex关键字并且它有效。