Codeigniter 在mongoDB中,返回包含字段名的数组的等效项是什么?

Codeigniter 在mongoDB中,返回包含字段名的数组的等效项是什么?,codeigniter,mongodb,Codeigniter,Mongodb,Codeigniter中的mysql函数我使用list_field()返回一个包含字段名的数组。在mongoDB中,返回包含字段名的数组的等价项是什么? 下面的代码是我使用的list_字段函数 function GetField($execution) { $query = $this->db->query($execution); if ($query->num_rows() > 0) { return $query->list_f

Codeigniter中的mysql函数我使用list_field()返回一个包含字段名的数组。在mongoDB中,返回包含字段名的数组的等价项是什么? 下面的代码是我使用的list_字段函数

function GetField($execution) {
    $query = $this->db->query($execution);
    if ($query->num_rows() > 0) {
        return $query->list_fields();
    } else {
        return array();
    }
}
我的目标是,如果存在复杂查询的输入,则该列将根据输入查询动态显示



所以我想创建一些应用程序,比如rockmongo和phpMyAdmin。因此,当我们输入一个查询时,结果与我们输入的查询匹配。我还没有找到一个MongoDB的bson字段根据用户的查询动态显示的函数。 下面的查询示例如下:

db.users.find({}, {a:1,b:1})

因此,出现的bson字段是a和b。

MongoDB中没有等效的查询。它是一个无模式的数据库,这意味着每个文档可以有完全不同的字段集。

find方法返回一个游标迭代,您将得到一个结果,根据驱动程序的不同,该结果可能是一个哈希表或字典,其键是文档属性的名称

诸如此类:

{"name" : "John","age" : 30, "_id" : "497ce96f395f2f052a494fd4"}
所以“字段名”应该是“名称”、“年龄”、“id”

请注意


由于Mongo对于查询中的每个文档都没有模式,因此可能有不同的键

该字段根据输入查询动态显示,如MySQL中使用phpmyadmin和mongoDB中的rockmongo。如果MongoDB中没有等价的查询,那么有什么技巧可以解决我的问题吗?对不起,我不明白。你能详细说明一下吗?我想创建rockmongo和phpMyAdmin这样的应用程序。因此,当我们输入一个查询时,结果与我们输入的查询匹配。我还没有找到一个MongoDB的bson字段根据用户的查询动态显示的函数。例如下面这样的查询:db.users.find({},{a:1,b:1}),因此出现的bson字段是a和b。如果执行此查询,则将选择所有仅具有
\u id
a
b
字段(当然,如果它们存在于文档中)的文档.那么,如何使用codeigniter动态显示bson字段呢?据我所知,您需要构建一种查询编辑器,并且在编写查询时希望看到“字段名”?那么有什么技巧可以解决我的问题吗?因为我的应用程序将接收复杂的查询。感谢Adnvance,技巧是当文档中有一个嵌入文档时,这意味着主文档中有其他字典,您需要巧妙地解析该树视图。下面的代码用于搜索特定数据$collection->find(array('nama'=>'dendie');下面的代码用于搜索特定数据
$collection->find(数组('name'=>'dendie')<代码>但此代码是静态的,如何动态更改此代码。我的意思是,如果有一个字段要输入名称,然后我单击submit按钮来搜索数据