1

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

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

4

2 回答 2

0

如下使用

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

这里有更多细节:http ://www.php.net/manual/en/mongo.queries.php

于 2012-10-24T08:22:51.083 回答
0

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

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

应该管用。

如果这不是您正在寻找的,也许您可​​以更具体并准确地解释您要做什么。

更新

我注意到您可能想要编辑$searchTermsAll变量以在文档中按此字段进行搜索。从外观上看,这个 PHP 类的链接与通常用于 SQL 的链接相同,因此您应该需要做一些特殊的事情,并且可以只启用对数据表的过滤并将值添加mystringfoo字段中。

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

更新 2

一种更具破坏性的方式应该继续过滤,将第 99 行替换为:

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

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

于 2012-10-24T08:24:17.993 回答