NumberLong в Mongodb 2.6 при вставке через phpDriver
Когда вы делаете что-то подобное в Mongo 2.6db.test.insert({a : 1, b : [2, 3]})
ты получишь{ "_id" : ObjectId("..."), "a" : 3, "b" : [2, 3]}
, Ничего неожиданного.
Когда я делал подобное через php вMongo 2.4.10
с1.4.5 driver
:
$test->insert([
'a' => 1,
'b' => [2 ,3]
])
Я все еще получал те же самые нормальные числа. Но когда я делаю что-то подобное вMongo 2.6.0
результат другой:
{
"_id" : ObjectId("534a...567"),
"a" : NumberLong(1),
"b" : [
NumberLong(2),
NumberLong(3)
]
}
Как видите, числа преобразуются вNumberLong
, Кроме того, это то же самое целое число (только оно может быть намного больше), я не хочу, чтобы это поведение, потому что а) это больше читать в оболочке, б) все мои цифры ниже100000
и поэтому нет смысла иметь номер Long там.
я используюphp 5.5.10
сmongoDriver 1.5.1