mongodb - 为什么php往mongo里插入整型数字8,变成了numberint(8)?
程序员文章站
2022-05-18 11:22:15
...
php通过mongo驱动里的update方法给一个整型数组(数组是这样的,list:[1,3,4])插入数据时,插入8,变成了numberlong(8)。
把8转换为驱动里定义的两个类:mongoint32和mongoint64也不对,此时显示的是numberint(8),numberlong(8)。
在mongo shell里面插入就没有问题,是8。
谢谢啦。
把8转换为驱动里定义的两个类:mongoint32和mongoint64也不对,此时显示的是numberint(8),numberlong(8)。
在mongo shell里面插入就没有问题,是8。
谢谢啦。
回复内容:
php通过mongo驱动里的update方法给一个整型数组(数组是这样的,list:[1,3,4])插入数据时,插入8,变成了numberlong(8)。
把8转换为驱动里定义的两个类:mongoint32和mongoint64也不对,此时显示的是numberint(8),numberlong(8)。
在mongo shell里面插入就没有问题,是8。
谢谢啦。
不太清楚你到底需要什么类型的数据
插入整型数字8,变成NumberInt(8)
不是正常的吗?
在mongo shell里,数字默认是double类型的
$type — MongoDB Manual 3.2
比如插入数字8, 你可以通过查找num为double
类型(即$type为1)的文档,找到test_doc
db.collection_example.insert({_id: 'test_doc', num: 8})
db.collection_example.find({num: {$type: 1}})
上一篇: react应用开发脚手架使用案例