PDO MS SQL Server和PDO MySQL的PDO SQLSRV和PDO的MySQL返回字符串时,您将获取返回字符串数组,即使列的SQL类型的意思是数字类型,如int或浮动。我设法解决了这个问题,但我想知道为什么他们是以这种方式开始设计的。是否因为PDO本身不支持它(或以前不支持它)?获取当整数或浮点数
2
A
回答
0
随着PDO MySQL the underlying C API返回a structure of strings时调用mysql_fetch_row()
。由于PHP是一种松散类型的语言,必要时会自动转换为整数,所以我怀疑PDO开发人员选择按原样返回它们。这比查找每个列类型并动态地转换为整数/浮点数要快。
具体地关于浮动,从字符串转换时的本机PHP浮子可以是比原来的存储的值不同。例如,MySQL列支持精度,而PHP浮点不支持。将数据库中的浮点数作为字符串离开,可以更好地控制(例如选择以不同的精度使用a library)。
+0
还有一个准备好的声明 –
0
因为PDO本身不支持它(或以前不支持它)?
很多是的,但对于mydsql它不是因为PDO而是因为mysql C API。
既然changed,时刻PDO can return correct datatypes如果你运行一个本地事先准备好的声明针对mysqlnd基PDO实例。
相关问题
- 1. 从java中的字符串获取浮点数或整数值
- 2. 从整数获取浮点值
- 3. 获取带整数的浮点值
- 4. 浮点数,小数或整数
- 5. 如何从浮点数模数中获取提取整数?
- 6. 试图获取存储在会话浮点或整数值
- 7. 检查为整数或浮点数值
- 8. 显示整数和整数浮点数作为浮点数
- 9. 提取整数和浮点数
- 10. 声明浮点数或浮点数吗?
- 11. 整数除法或浮点乘法?
- 12. 获取一个浮点数的整数部分:Objective-C
- 13. 比较浮点数整数
- 14. 获取C中浮点数的指数
- 15. 获取浮点数的指数
- 16. 当存在浮点数时,获取MySQL表数据的SUM
- 17. 获取浮点基数点后的值
- 18. 大整数到单点浮点数
- 19. CIN:检查次数为整数或浮点即使浮点值是1.000
- 20. C思维:浮点数与整数和浮点数表示法
- 21. Python:列表或浮点数组或浮点数
- 22. 使用浮点数或整数数组计算Pi
- 23. 正则表达式整数或浮点数与两位小数
- 24. 只接受两位数整数或浮点数
- 25. 哈斯克尔:读一个数字(整数或浮点数)
- 26. 浮点和整数模糊
- 27. 转换浮点整数
- 28. 浮点与整数性能
- 29. 阅读整数浮点
- 30. PHP整数到浮点值
类型列无所谓,它只是定义了可以存储在它,而不是当你从获取它有什么地方返回什么类型。默认情况下,PDO返回的所有内容都是一个字符串,PHP虽然是类型转换,所以'$ var = 10;'和'$ var =“10”;'(一个整数和一个字符串,都被赋值为10)都是视为数字。 – Qirel