想象一下由于浮点不准确而填充错误的代码库。我们假设重构或重写代码不是一种选择。
当然,PHP提供GMP和/或BC以获得更高的精度。但是,考虑到上述限制,实施它们将是一项不可能完成的任务。
有没有办法(可能通过PHP模块或核心补丁)将PHP浮点类型完全替换为更精确的东西?当然会有性能损失,但这会被考虑在内。
它存在吗?如果没有,那么我写一个想法有多糟糕? ;)
答案 0 :(得分:2)
您可能实际上考虑使用SPL Types来提供围绕标量PHP数据类型的OO包装器。然后,您可以扩展SplFloat以用您想要的任何内容替换内部表示。
当然,您仍然需要修改代码中的每个浮点赋值以使用SplFloat而不是本机标量浮点数