php - 如何在没有千位分隔符和舍入函数的情况下使用 number_format

标签 php rounding separator number-formatting

我对如何一起使用 number_format 和 round 函数有疑问,这是因为我有一个脚本来导入我供应商的所有产品,但我需要对价格进行四舍五入,例如:

供应商价格:1854.81 美元 四舍五入的价格:1854.99 美元(这是我想要的格式) 我的脚本打印的价格:1,854.90 美元

我尝试了 3 个 PHP 变体来做到这一点:

变体#1:

$preciosinr = 1854.81;
echo number_format(round($preciosinr*4)/4,2); //Print 1,854.90

变体 #2

$preciosinr = 1854.81;
$pos = 3 - floor(log10($preciosinr));
echo number_format(round($preciosinr,$pos)-0.10,2); //Print 1,854.75

变体 #3

$preciosinr = 1854.81;
number_format($preciosinr,2);
number_format(round($preciosinr,1),2);
number_format(round($preciosinr,0),2);
echo number_format(round($preciosinr,0)-0.01,2); //Print 1,854.99

如您所见,所有变体都用“,”打印价格,而我需要没有这个的价格,因为我的系统检测到的价格不正确。

我在 php.net 中读到我需要使用以下 sintaxis,但我不知道如何与我的代码集成。

// english notation without thousands separator
$english_format_number = number_format($number, 2, '.', '');
// 1234.57

你能帮帮我吗?

最佳答案

$price=number_format(round($preciosinr,0)-0.01,2,'.','');

echo $price;

这应该可行

关于php - 如何在没有千位分隔符和舍入函数的情况下使用 number_format,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17375425/

相关文章:

php - 将 SQL 转储到文件 : data with accent (italian) different charset

mysql - 默认情况下,MySQL 如何舍入数字?

algorithm - 四舍五入到给定基数的最接近整数幂

jquery - 电子邮件分隔符类似于 gmail

excel - 如何解析 VBA 代码行指令

php - SELECT COUNT() 在左连接表 mysql 中

php - 从我的网站在YouTube channel 上上传视频

php - 如何根据 symfony 2 中的角色重定向到不同的 url

python - float 格式为 3 或 4 位小数

java - 如何在 MacOS 上修复带有分隔符的 JComboBox PopUp 的垂直位置?