PHP& MongoDB:数字字段名称返回“NumberLong(X)”字符串

时间:2014-04-08 07:09:03

标签: php mongodb

我有一个数据结构,其中包含一个带有数字名称字段的对象,例如

{1 : {views:42, impressions:999}, 2 : {...} ...}

这不是一个'数组',只是一个标识符。 当我通过PHP Mongo extension 1.4.4(mongo 2.4.7和Web服务器都在Win7上运行)请求这些记录时,我按预期收到这些密钥,即

2
    impressions    9
    views          0
3
    impressions    9
    views          9
1
    impressions    50
    views          50

但是当这个代码在暂存环境中运行时(LAMP,我们有mongo驱动程序1.6.0-dev,mongodb本身是2.4.2)我收到它们这种奇怪的方式:

NumberLong(2)
    impressions    9
    views          0
NumberLong(3)
    impressions    9
    views          9
NumberLong(1)
    impressions    50
    views          50

其中'NumberLong(X)'是纯字符串,来自我的光标。 修复此问题并用字符串替换数字名称并不是什么大问题,但我想知道什么驱动程序(或DB)行为错误以及原因。

两台服务器都启用了“mongo.native_long”。

1 个答案:

答案 0 :(得分:1)