Heim > Backend-Entwicklung > PHP-Tutorial > mongodb - 为什么php往mongo里插入整型数字8,变成了numberint(8)?

mongodb - 为什么php往mongo里插入整型数字8,变成了numberint(8)?

WBOY
Freigeben: 2016-06-06 20:06:56
Original
1811 Leute haben es durchsucht

php通过mongo驱动里的update方法给一个整型数组(数组是这样的,list:[1,3,4])插入数据时,插入8,变成了numberlong(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

<code>db.collection_example.insert({_id: 'test_doc', num: 8})
db.collection_example.find({num: {$type: 1}})</code>
Nach dem Login kopieren
Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage