我刚刚在每个组件的最后一个版本中设置了MongoDB:
我做了一个快速测试来检查我的数据库是否正常,我可以使用全文搜索来检索我的数据:
$m = new MongoClient();
$db = $m->mytestdb;
$result = $db->command(
array(
'text' => 'items',
'search' => 'something',
'limit' => 50,
)
);
一切都很好但是当我看到MongoDB日志时,有一条奇怪的消息我在网上找不到任何答案:
[conn1]将在以后的版本中删除text命令。请改用$ text查询运算符。
由于我刚刚开始研究它,有点让我知道我刚刚使用的全文搜索将被弃用。
即使official doc正在使用该代码(参见示例#4)。
那么我应该使用什么代替我的代码呢?如果我有一天在apt-get update& amp;升级我的所有代码都会下拉。
答案 0 :(得分:1)
我发现2.6中的新$ text,以下是如何使用命令执行与之前相同的请求:
$m = new MongoClient();
$db = $m->mytestdb;
$collection = $db->items;
$cursor = $collection->find(
array(
'$text' => array('$search' => 'something to search')
),
array (
'score' => array('$meta' => "textScore")
)
);
答案 1 :(得分:0)
看起来他们正在推出2.6中的$ text,并弃用文本搜索功能。
您可以在此处参考$ text的更多信息。
http://docs.mongodb.org/manual/reference/operator/query/text/#op._S_text