mongodb将id作为字符串而不是作为mongoId对象获取

时间:2014-11-30 13:04:50

标签: php arrays mongodb

假设我在1个集合中有很多文档,看起来像这样

Array
(
    [_id] => MongoId Object
        (
            [$id] => 547b04884a08bb0f201026c2
        )

    [name] => someName
    [description] => someDescription
)

我该怎么做才能获得看起来像这样的返回数组

Array
(
    [$id] => 547b04884a08bb0f201026c2
    [name] => someName
)

我知道我可以使用类似$ collection-> find(array(),array('name','_ id'=> array('$ id')));

但是返回带有名称的数组和包含变量id的mongoId对象,我想得到指定的数组,所以我不必提取该id。 有谁可以请给我一个例子,或指出我正确的方向是什么和在哪里看

1 个答案:

答案 0 :(得分:0)

对于大多数用例,您可以直接使用MongoID对象。

如果您要将文档的_id与其他字符串组合以进行输出/显示,则可以按原样使用它。 MongoID类有一个toString()方法,它只是将对象的原始值作为字符串返回。

如果你正在使用文档ID对Mongo进行进一步的查询,那么需要无论如何都要使用MongoID对象,所以仍然无法转换它。