方法:1、使用number_format(),语法“number_format($num,小数位数,'.','')”;2、使用round(),语法“round($num,小数位数)”;3、利用sprintf()函数格式化输出来实现四舍五入。
本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
在PHP开发中,有时候我们会遇到将数据进行四舍五入的运算情况,下面分享用PHP实现数据四舍五入的3种方法,分别通过number_format()函数、round()函数和sprintf()格式化输出的方法实现四舍五入。
1、number_format() 方法实现四舍五入
number_format() 函数通过千位分组来格式化数字。
<?php //定义一个float型的变量 $number = 1234.5678; //English Notation (defult) $number_format_english = number_format($number); //1,235 $number_format_english = number_format($number, 2, '.', ''); //1234.57 //French Notation $number_format_francais = number_format($number, 2, ',', ''); //1234,57 $number_format_francais = number_format($number, 3, ',', ''); //1234,568 echo $number_format_english; //1234.57 echo $number_format_francais; //1234,568
2、round()方法实现四舍五入
round() 函数对浮点数进行四舍五入。
<?php //定义一个float型的变量 $number = 1234.5678; //不保留小数 echo round($number); //1235 //保留两位小数 echo round($number,2); //1234.57 echo "<br>"; $number = 12345678; //在千分位进行四舍五入 echo round($number,-4); //12350000
3、sprintf() 格式化输出实现四舍五入
字符串格式化命令,主要功能是把格式化的数据写入某个字符串中。sprintf 是个变参函数。
<?php //定义一个正整数 $n = 43951789; //定义一个负整数 $u = -43951789; // ASCII 65 is 'A' $c = 65; printf("%%b = '%b'\n", $n); //%b = '10100111101010011010101101' printf("%%c = '%c'\n", $c); //%c = 'A' printf("%%d = '%d'\n", $n); //%d = '43951789' printf("%%e = '%e'\n", $n); //%e = '4.395179e+7' printf("%%u = '%u'\n", $n); //%u = '43951789' printf("%%u = '%u'\n", $u); //%u = '4251015507' printf("%%f = '%f'\n", $n); //%f = '43951789.000000' printf("%%o = '%o'\n", $n); //%o = '247523255' printf("%%s = '%s'\n", $n); //%s = '43951789' printf("%%x = '%x'\n", $n); //%x = '29ea6ad' printf("%%X = '%X'\n", $n); //%X = '29EA6AD' printf("%%+d = '%+d'\n", $n); //%+d = '+43951789' printf("%%+d = '%+d'\n", $u); //%+d = '-43951789'
推荐学习:《PHP视频教程》
以上是php中实现四舍五入的方法有哪些的详细内容。更多信息请关注PHP中文网其他相关文章!