首页 > 编程知识 正文

金额精确到百元并向下取整,php求数组的最大值和最小值

时间:2023-05-05 14:45:37 阅读:34098 作者:2201

在PHP中,一般来说,需要取上整数的情况下,取下整数。 ceil ()、floor ) )函数就可以了。 但是,如何处理金额的上调和下调呢?

四舍五入/** *默认保留两位数(金额四舍五入算法) @ param $ amount * @ paramint $ decimals * @ return float|int */publicstaticfunctiongetceieion $amount=$amount/pow(10,$decimals ); returnnumber_format($amount,$decimals,'.',' ); }一开始我以为上面的代码很稳定,但发现现实和理想不一样。 如果输入35.02,则会出现35.03。 为什么? $amount*pow(10,$decimals )的结果为浮动,输出为3502.00000000023974,因此最终结果当然为35.03

解析/** *默认情况下为两位数(金额进位算法) @ param $ amount * @ paramint $ decimals * @ return float|int */publicstaticfunctiongeteton $amount=ceil($amount; $amount=$amount/pow(10,$decimals ); returnnumber_format($amount,$decimals,'.',' ); } (这里是round ) )提供一个不太优雅的解决方案,保留一个小数位数(其实我并不觉得很好)。 以及ceil ()。

整体往下取也不会发生上述问题。 方法是一样的。 我不会在这里投稿。

其他灵巧的草丛期待着能提出更好的方案。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。