如何过滤数据表的mongodb结果?

时间:2012-10-24 08:18:35

标签: php mongodb datatables

我使用此脚本获取我的mongo数据库的集合:http://datatables.net/development/server-side/php_mongodb

我的问题是:如何检索仅foo == 'mystring'的行?

2 个答案:

答案 0 :(得分:0)

使用如下

$cursor = $collection->find(array("foo" => "mystring"));

以下是更多详情:http://www.php.net/manual/en/mongo.queries.php

答案 1 :(得分:0)

正如您将注意到(在第29行)文件中的源代码,mongo集合的名称为:$m_collection

$m_collection->find(array('foo' => 'mystring'))

应该工作。

如果这不是你想要的,也许你可以更具体,并准确解释你想要做什么。

更新

我注意到您可能想要编辑$searchTermsAll变量来搜索文档中的此字段。从它的外观来看,这个PHP类的链接与通常用于SQL的链接相同,因此你应该做任何特殊的操作,并且只能启用对数据表的过滤并将值mystring添加到foo字段。

但是要知道这是否是正确的答案,你需要澄清。

更新2

这种应该保持过滤的更具破坏性的方法是将第99行替换为:

$cursor = $m_collection->find(array_merge($searchTerms, 
    array('foo' => 'mystring')), $fields);

这将始终确保您的条件已添加到搜索字词中,但会保留用户自己的搜索字词。