再会。我在使用类的绑定变量从 MySQL 数据库中选择浮点数时遇到问题mysqli
。
price
列的类型FLOAT(9,2)
和它的值1.01
简化的一段代码:
$stmt = $dbh->prepare('SELECT price FROM goods WHERE id=5');
$stmt->execute();
$stmt->bind_result(&$price);
$stmt->fetch();
echo $price;
// 1.0099999904633
据我了解mysqli
,自动将其转换为双倍。但为什么?
当我将表中的列类型更改为DOUBLE(9,2)
一切正常并且$price
值正好是1.01
.
有没有办法在具有列类型的变量中获取1.01
值(没有舍入函数)?$price
FLOAT(9,2)
谢谢你。