MySQL から (PHP PDO を使用して) 値 (signed Float(7,2) 形式で格納) を取得しています。
Result
=====================
Database = 8.9 //correct value
PHP = 8.8999996185303 //fetch from PHP PDO
サンプルコード:
$qry = 'SELECT hours FROM sample WHERE filter=?;';
$stmt = $db->prepare($qry);
$stmt->execute(array($filter));
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row['hours'];
}
DB からこのデータを取得する最善の方法は何ですか? PHP の浮動小数点近似の問題について読みました。したがって、おそらくSQLを次のように変更することを考えていました。
SELECT (hours * 100) as butSoExpensiveOnDatabase etc...
round
またはnumber_format
PHP でor を使用します。あなたたちは何を提案しますか、そしてその理由は何ですか?
テーブル構造を変更することはオプションではありません!
(理由: サポートが必要な古いレガシー コード + 時間がない + 予算がない)