PHP中round()函数对浮点数进行四舍五入的方法


Posted in PHP onNovember 19, 2014

本文实例讲述了PHP中round()函数对浮点数进行四舍五入的方法。分享给大家供大家参考。具体方法如下:

语法:round(x,prec)

参数 描述
x 可选,规定要舍入的数字.
prec 可选,规定小数点后的位数.

说明:返回将 x 根据指定精度 prec(十进制小数点后数字的数目)进行四舍五入的结果,prec 也可以是负数或零(默认值).

提示和注释

注释:php默认不能正确处理类似 "12,300.2" 的字符串.

注释:prec 参数是在 php 4 中被引入的,实例代码如下:

<?php 

*/ 

echo round(3.4);         //输出3 

echo "<br>"; 

echo round(3.5);         //输出4 

echo "<br>"; 

echo round(3.6);         //输出4 

echo "<br>"; 

echo round(3.6,0);         //输出4 

echo "<br>"; 

echo round(1.95583,2);        //输出1.96 

echo "<br>"; 

echo round(1241757,-3);        //输出1242000 

echo "<br>"; 

echo round(4.045,2);         //输出4.05 

echo "<br>"; 

echo round(4.055,2);         //输出4.06 

 

//使用stdround函数代替php的round函数 

?>

 
<?php 

function   stdround($num,   $d=0)  

{  

      return   round($num   +   0.0001   /   pow(10,   $d),   $d);  

}    

         

echo   "round(1.005,2)= ".round(1.005,2). "n ";  

echo   "round(1.015,2)= ".round(1.015,2). "n ";  

echo   "round(1.025,2)= ".round(1.025,2). "n ";  

echo   "round(1.035,2)= ".round(1.035,2). "n ";  

echo   "round(1.045,2)= ".round(1.045,2). "n ";  

echo   "round(1.055,2)= ".round(1.055,2). "n ";  

echo   "round(1.065,2)= ".round(1.065,2). "n ";  

echo   "round(1.075,2)= ".round(1.075,2). "n ";  

echo   "round(1.085,2)= ".round(1.085,2). "n ";  

echo   "round(1.095,2)= ".round(1.095,2). "n "; 

 

echo   "stdround(1.005,2)= ".stdround(1.005,2). "n ";  

echo   "stdround(1.015,2)= ".stdround(1.015,2). "n ";  

echo   "stdround(1.025,2)= ".stdround(1.025,2). "n ";  

echo   "stdround(1.035,2)= ".stdround(1.035,2). "n ";  

echo   "stdround(1.045,2)= ".stdround(1.045,2). "n ";  

echo   "stdround(1.055,2)= ".stdround(1.055,2). "n ";  

echo   "stdround(1.065,2)= ".stdround(1.065,2). "n ";  

echo   "stdround(1.075,2)= ".stdround(1.075,2). "n ";  

echo   "stdround(1.085,2)= ".stdround(1.085,2). "n ";  

echo   "stdround(1.095,2)= ".stdround(1.095,2). "n "; 

 

$m=0.000000000000001;  

echo   "n ";  

echo   "round(1.005+{$m},2)= ".round(1.005+$m,2). "n ";  

echo   "round(1.015+{$m},2)= ".round(1.015+$m,2). "n ";  

echo   "round(1.025+{$m},2)= ".round(1.025+$m,2). "n ";  

echo   "round(1.035+{$m},2)= ".round(1.035+$m,2). "n ";  

echo   "round(1.045+{$m},2)= ".round(1.045+$m,2). "n ";  

echo   "round(1.055+{$m},2)= ".round(1.055+$m,2). "n ";  

echo   "round(1.065+{$m},2)= ".round(1.065+$m,2). "n ";  

echo   "round(1.075+{$m},2)= ".round(1.075+$m,2). "n ";  

echo   "round(1.085+{$m},2)= ".round(1.085+$m,2). "n ";  

echo   "round(1.095+{$m},2)= ".round(1.095+$m,2). "n "; 

 

echo   "round(1.005,2)= ".round(1.005,2). "n ";  

echo   "round(1.015,2)= ".round(1.015,2). "n ";  

echo   "round(1.025,2)= ".round(1.025,2). "n ";  

echo   "round(1.035,2)= ".round(1.035,2). "n ";  

echo   "round(1.045,2)= ".round(1.045,2). "n ";  

echo   "round(1.055,2)= ".round(1.055,2). "n ";  

echo   "round(1.065,2)= ".round(1.065,2). "n ";  

echo   "round(1.075,2)= ".round(1.075,2). "n ";  

echo   "round(1.085,2)= ".round(1.085,2). "n ";  

echo   "round(1.095,2)= ".round(1.095,2). "n "; 

?>

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

PHP 相关文章推荐
php中的时间处理
Oct 09 PHP
mysql中存储过程、函数的一些问题
Feb 14 PHP
php中强制下载文件的代码(解决了IE下中文文件名乱码问题)
May 09 PHP
php中json_encode中文编码问题分析
Sep 13 PHP
php网上商城购物车设计代码分享
Feb 15 PHP
基于php-fpm 参数的深入理解
Jun 03 PHP
PHP和Mysql中转UTF8编码问题汇总
Oct 10 PHP
php使用变量动态创建类的对象用法示例
Feb 06 PHP
php提交表单时保留多个空格及换行的文本样式的方法
Jun 20 PHP
php生成毫秒时间戳的实例讲解
Sep 22 PHP
PHP实现搜索时记住状态的方法示例
May 11 PHP
laravel实现于语言包的完美切换方法
Sep 29 PHP
PHP中创建图像并绘制文字的例子
Nov 19 #PHP
PHP图片处理之图片背景、画布操作
Nov 19 #PHP
php使用function_exists判断函数可用的方法
Nov 19 #PHP
PHP图片处理之使用imagecopyresampled函数实现图片缩放例子
Nov 19 #PHP
PHP判断一个gif图片是否为动态图片的方法
Nov 19 #PHP
PHP图片处理之使用imagecopyresampled函数裁剪图片例子
Nov 19 #PHP
PHP图片处理之使用imagecopy函数添加图片水印实例
Nov 19 #PHP
You might like
基于文本的留言簿
2006/10/09 PHP
php_xmlhttp 乱码问题解决方法
2009/08/07 PHP
php实现的click captcha点击验证码类实例
2014/09/23 PHP
PHP实现非阻塞模式的方法分析
2018/07/26 PHP
prototype 1.5相关知识及他人笔记
2006/12/16 Javascript
javascript模拟实现ajax加载框实例
2014/10/15 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
基于gulp合并压缩Seajs模块的方式说明
2016/06/14 Javascript
javascript中mouseenter与mouseover的异同
2017/06/06 Javascript
jQuery中extend函数简单用法示例
2017/10/11 jQuery
ES6 javascript中class静态方法、属性与实例属性用法示例
2017/10/30 Javascript
浅谈Webpack多页应用HMR卡住问题
2019/04/24 Javascript
Nodejs中使用puppeteer控制浏览器中视频播放功能
2019/08/26 NodeJs
vue 解决遍历对象显示的顺序不对问题
2019/11/07 Javascript
vue与django集成打包的实现方法
2019/11/11 Javascript
Python编程中字符串和列表的基本知识讲解
2015/10/14 Python
Python实现字符串与数组相互转换功能示例
2017/09/22 Python
python决策树之C4.5算法详解
2017/12/20 Python
在PyCharm中批量查找及替换的方法
2019/01/20 Python
Python中的几种矩阵乘法(小结)
2019/07/10 Python
详解python实现交叉验证法与留出法
2019/07/11 Python
浅谈Django QuerySet对象(模型.objects)的常用方法
2020/03/28 Python
利用Python实现某OA系统的自动定位功能
2020/05/27 Python
HTML5新特性 多线程(Worker SharedWorker)
2017/04/24 HTML / CSS
Dr. Martens马汀博士官网:马丁靴始祖品牌
2016/10/15 全球购物
健康监测猫砂:Pretty Litter
2017/05/25 全球购物
软件测试面试题
2014/01/05 面试题
大型车展策划方案
2014/02/01 职场文书
幼儿园课题实施方案
2014/05/14 职场文书
“向国旗敬礼”活动策划方案(4篇)
2014/09/27 职场文书
2014年保卫工作总结
2014/12/05 职场文书
优秀党员个人总结
2015/02/14 职场文书
2015年高考寄语或鼓励的话
2015/03/23 职场文书
周恩来的四个昼夜观后感
2015/06/03 职场文书
win10下go mod配置方式
2021/04/25 Golang
python自动化测试通过日志3分钟定位bug
2021/11/20 Python