良い一日。mysqliクラスのバインド変数を使用して MySQL データベースから浮動小数点数を選択する際に問題があります。
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 にキャストします。しかし、なぜ?
テーブルの列のタイプを変更するDOUBLE(9,2)と、すべてがうまくいき、$price値は正確になり1.01ます。
列の型として (丸め関数なしで)変数1.01の値を取得する方法はありますか?$priceFLOAT(9,2)
ありがとうございました。