首页 > 解决方案 > PHP“圆形”功能,没有按预期工作?

问题描述

如果它有美分,我正在尝试四舍五入,例如:

6999070000,我正在研究非美元货币,我在社区中尝试了很多答案,但我无法让它发挥作用。

我的示例代码:

$gg = rtrim(number_format(69990, 1), '.');
echo $gg . "\n <br />";
echo round($gg , 2, PHP_ROUND_HALF_UP);
echo  "\n <br />";
echo number_format($gg,2);

输出是:

69,990.0
 <br />69
 <br />69.00

标签: php

解决方案


PHP的round()

舍入一个浮点数


您正在尝试对每个第 1000 个数字进行“四舍五入”。

你应该像这样使用php ceil()

<?php

    $n = 69990;
    
    // WRONG: Only for decimals
    echo round($n , 2, PHP_ROUND_HALF_UP) . PHP_EOL;
    // 69990
    
    // Nearest 'whole'
    echo ceil($n / 1000) * 1000 . PHP_EOL;
    // 70000

在线尝试

如何将一个数字四舍五入到最接近的 10?


推荐阅读