主页 > 知识库 > PHP保留两位小数的几种方法

PHP保留两位小数的几种方法

热门标签:Linux服务器 科大讯飞语音识别系统 电子围栏 团购网站 阿里云 Mysql连接数设置 服务器配置 银行业务

 代码如下所示:

$num = 10.4567;  
  //第一种:利用round()对浮点数进行四舍五入
  echo round($num,2); //10.46
   
  //第二种:利用sprintf格式化字符串
  $format_num = sprintf("%.2f",$num);
  echo $format_num; //10.46
   
  //第三种:利用千位分组来格式化数字的函数number_format()
  echo number_format($num, 2); //10.46
  //或者如下
  echo number_format($num, 2, '.', ''); //10/46

ps:PHP 数字(价格)保留两位小数

下面看下PHP中对一些商品的价格计算或价格的的展示,需要精确到小数点后的两位数字,也就是我们平时RMB中的分的单位。那在PHP中如何展示商品的价格,并保留到分的单位的呢?下面教程就来讲解一下。

php 商品价格,php保留两位小数,php商品价格展示

PHP number_format() 函数

number_format():函数可以通过千位分组的形式来格式化数字。

语法:

number_format(number,decimals,decimalpoint,separator)

参数:

number:必需。要格式化的数字。
decimals:可选。规定多少个小数。
decimalpoint:可选。规定用作小数点的字符串。
separator:可选。规定用作千位分隔符的字符串。

例:PHP商品价格以元为单位,保留两位小数

代码:

?php
$a = 10;
echo number_format($a,'2');
$b = 1000000;
echo number_format($b,'2');
$c = 5458.5684;
echo number_format($c,'2');
$d = '1254.8963';
echo number_format($d,'2');
$e = '88.9643';
echo number_format($e,'2');
?>

输出结果:

10.00
1,000,000.00
5,458.57
1,254.90
88.96

以上示例总结:

1、无论是数字类型或是字符串类型的数字,都可以被 number_format() 函数操作
2、number_format() 在操作不含有小数的数字时,如果设置了有多小个小数,会以 0 的形式补充。
3、如果操作带有多少小数的数字,会以四舍五入的方式进行最近一位的取值
4、如果不设置 number_format() 第三个和第四个参数,整数部分如果大于3位,那么从小数点左边向右开始,每三位都用','号分割

例 PHP number_format() 去掉整数部分的分割符号

代码:

?php
echo number_format("1000000",2,".","");
echo number_format("1000000",2,".","x");
echo number_format("1000000",2,"y","x");
?>

输出结果:

1000000.00
1x000x000.00
1x000x000y00

以上示例总结:

1、number_format() 函数的第三个参数,可以替换小数字的展示方式,比如把小数点换成y
2、number_format() 函数的第四个参数,可以替换整数部分的千分位分割符号,比如为空,或为X
3、要注意的是,number_format() 函数的第三个参数与第四个参数是共同存在的,不能只填写一个。

以上所述是小编给大家介绍的PHP保留两位小数的几种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

您可能感兴趣的文章:
  • PHP保留两位小数并且四舍五入及不四舍五入的方法

标签:蚌埠 江苏 萍乡 枣庄 广元 衢州 大理 衡水

巨人网络通讯声明:本文标题《PHP保留两位小数的几种方法》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266