在php中将Integer转换为Double

时间:2012-08-22 11:35:36

标签: php mysql phpmyadmin

我无法在Mysql中插入字段。输入从HTML表单作为字符串传递。我认为这个问题是由于类型不匹配造成的。数据库类型是双

我无法将其转换为Double或float。使用floatval()或Doubleval()。

通常输入类似于8我希望它将其转换为8.0

2 个答案:

答案 0 :(得分:3)

您可以完全安全地将8插入小数或浮点数。它根本不必是8.0

如果您在插入值时遇到问题,则它不是数据库中的数据类型,而是另一个问题。

如果您发布更多细节,我们会进一步研究:)

修改:以下是intdecimalfloat类型的输入数据:

mysql> create table numberTest(inty int(2), decy decimal(3,2), floaty float(3,2));
Query OK, 0 rows affected (0.01 sec)

mysql> select * from numberTest;
Empty set (0.00 sec)

mysql> insert into numberTest values(7,7,7);
Query OK, 1 row affected (0.00 sec)

mysql> insert into numberTest values(7.2,7.2,7.2);
Query OK, 1 row affected (0.00 sec)

mysql> select * from numberTest;
+------+------+--------+
| inty | decy | floaty |
+------+------+--------+
|    7 | 7.00 |   7.00 |
|    7 | 7.20 |   7.20 |
+------+------+--------+
2 rows in set (0.01 sec)

如果无法插入值,请在PHP中显示insert命令,它不是数据类型。你正在用这个问题咆哮错误的树。

答案 1 :(得分:1)

        $number = 8;
        echo number_format($number, 1, '.', ' '); //8.0
        echo number_format($number, 2, '.', ' '); //8.00