PHP实现数据四舍五入的方法小结【4种方法】

yipeiwu_com7年前PHP代码库

本文实例总结了PHP实现数据四舍五入的方法。分享给大家供大家参考,具体如下:

在PHP开发中,有时候我们会遇到将数据进行四舍五入的运算情况,本文分享了用PHP实现数据四舍五入的4种方法。

php实现数据四舍五入的4种方法,分别通过number_format()函数、round()函数和sprintf()格式化以及intval()函数输出的方法实现四舍五入。严格来说最后一种不是严格的四舍五入,最后一种仅是将数据的小数部分去掉,只保留整数部分,详细情况会在下面进行讨论。

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'

4、intval()函数实现整数输出

此方法不是严格的四舍五入执行,其将数据的小数部分强制清除达到只输出整数部分的效果。

<?php
//定义一个浮点数
$number = 1234.5678;
$number_int = intval($number);
echo $number_int;
//1234

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:
http://tools.jb51.net/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.jb51.net/jisuanqi/jsqkexue

在线计算器_标准计算器:
http://tools.jb51.net/jisuanqi/jsq

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数学运算技巧总结》、《PHP运算与运算符用法总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP数据结构与算法教程》、《php程序设计算法总结》及《php正则表达式用法总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php错误、异常处理机制(补充)

一、错误处理 异常处理: 意外,是在程序运行过程中发生的意料这外的事,使用异常改变脚本正常流程 PHP5中的一个新的重要特性 复制代码 代码如下: if(){ }else{ } try...

php接口技术实例详解

本文实例讲述了php接口技术。分享给大家供大家参考,具体如下: 1.接口是一种特殊的抽象类,为什么这么说呢?如果一个抽象类中所有的方法都是抽象方法,那么我们就换一种称呼,称为“接口”。...

php运行报错Call to undefined function curl_init()的最新解决方法

之前网上的解决方法如下: 1、在php.ini中开启curl扩展 2、将php目录下的libeay32.dll、ssleay32.dll、php5ts.dll拷贝到c:\windows\...

php中将html中的br换行符转换为文本输入中的换行符

下面这几个方法将能够帮你解决这个问题。 PHP版将html中的<br />换行符转换为文本框中的换行符: 复制代码 代码如下:function br2nl($text){&n...

PHP+FLASH实现上传文件进度条相关文件 下载

PHP之所以很难实现上传进度条是因为在我们上传文件到服务器的时候,要等到文件全部送到服务器之后,才执行相应的php文件。在这之前,文件数据保存在一个临时文件里面,而php无法获得这个文件...