为了账号安全,请及时绑定邮箱和手机立即绑定

不使用number_format函数的PHP格式化数字

不使用number_format函数的PHP格式化数字

PHP
慕姐8265434 2021-07-01 13:38:11
正如标题所说:使用这个数字1000000.125685,我如何在1,000,000.125不使用的情况下格式化它number_function,因为该函数会舍入小数点?number_format("1000000.125685",3) //returns 1,000,000.126如何在不使用的情况下提供我想要的任何数字“货币格式” number_format?
查看完整描述

1 回答

?
白衣染霜花

TA贡献1796条经验 获得超10个赞

如果您floor()在格式化之前使用数字,这将得到您想要的。问题是floor()四舍五入分数而不是“到 n 位小数”。因此,此代码执行 *1000 和 /1000 的往返...


echo number_format(floor(1000000.125685*1000)/1000,3);

给...


1,000,000.125

要将其包装成一个以数字和小数位作为参数的函数......


function number_format2( float $n, int $dp ): string {

    $multi = pow(10, $dp);

    return number_format(floor($n*$multi)/$multi,$dp);

}

echo number_format2(1000000.125685,4);


查看完整回答
反对 回复 2021-07-02
  • 1 回答
  • 0 关注
  • 211 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信