私はPHPで通貨の表示と数学を処理する方法に悩まされており、長い間、DECIMAL
タイプを使用してMySQLに保存money_format()
し、Webページに表示するためにフォーマットするために使用してきました。しかし、今日私は実際のプロトタイプを見ました:
string money_format ( string $format , float $number )
私は今少し混乱しています。私が言われたのは、お金のために山車を避けることだけです!しかし、これが基本的なフォーマット関数(たとえば、5倍高速)であり、入力をfloatにキャストします。number_format()
同じことをします。
だから私の質問は:
数セントまたは数兆ドルを扱っている(そしてどちらも扱っていない)場合を除いて、フロートにキャストされた通貨の表示と保存(ただし数学は行わない)についてはまったく心配する必要がありますか?浮動小数点の不正確さが私の数字を変える領域に近づくことはありますか?
#1の答えが私が本当に心配すべきであるということであるなら、なぜ
money_format()
このように構築されているのでしょうか?