1

浮動小数点の不正確さによるバグでいっぱいのコードベースを想像してみてください。コードのリファクタリングや書き直しはオプションではないという前提で進めています。

もちろん、PHPはより高い精度のためにGMPおよび/またはBCを提供します。ただし、上記の制限を考慮すると、それらを実装することは不可能な作業であることがわかります。

PHPのfloatタイプをより正確なものに完全に置き換える方法はありますか(おそらくPHPモジュールまたはコアパッチを介して)?もちろんパフォーマンスの低下はありますが、これは考慮されています。

それは存在しますか?そうでない場合、私がそれを書くことはどれほど悪い考えですか?;)

4

1 に答える 1

2

実際には、スカラーPHPデータ型のオブジェクト指向ラッパーを提供するSPL型の使用を検討するかもしれません。次に、SplFloatを拡張して、内部表現を必要なものに置き換えることができます。

もちろん、ネイティブのスカラーフロートの代わりにSplFloatを使用するには、コード内のすべてのフロート割り当てを変更する必要があります

于 2013-02-22T19:54:51.943 に答える