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中模拟POST传递数据的两种方法分享
Sep 16 PHP
PHP中模拟处理HTTP PUT请求的例子
Jul 22 PHP
php无限分类使用concat如何实现
Nov 05 PHP
PHP文件操作之获取目录下文件与计算相对路径的方法
Jan 08 PHP
PHP搭建大文件切割分块上传功能示例
Jan 04 PHP
ThinkPHP实现图片上传操作的方法详解
May 08 PHP
PHP简单实现循环链表功能示例
Nov 10 PHP
thinkPHP框架动态配置用法实例分析
Jun 14 PHP
实例介绍PHP删除数组中的重复元素
Mar 03 PHP
PHP操作XML中XPath的应用示例
Jul 04 PHP
Yii框架的redis命令使用方法简单示例
Oct 15 PHP
php使用pthreads v3多线程实现抓取新浪新闻信息操作示例
Feb 21 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
php中使用Imagick实现图像直方图的实现代码
2011/08/30 PHP
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
php function用法如何递归及return和echo区别
2014/03/07 PHP
一个简单安全的PHP验证码类、PHP验证码
2016/09/24 PHP
jquery绑定原理 简单解析与实现代码分享
2011/09/06 Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
2011/11/30 Javascript
jquery连缀语法如何实现
2012/11/29 Javascript
浅谈document.write()输出样式
2015/05/07 Javascript
javascript实现行拖动的方法
2015/05/27 Javascript
浅谈jquery.fn.extend与jquery.extend区别
2015/07/13 Javascript
jQuery的each循环用法简单示例
2016/06/12 Javascript
详解Vue如何支持JSX语法
2017/11/10 Javascript
NodeJS实现视频转码的示例代码
2017/11/18 NodeJs
利用Decorator如何控制Koa路由详解
2018/06/26 Javascript
详解如何在webpack中做预渲染降低首屏空白时间
2018/08/22 Javascript
angular2 ng2-file-upload上传示例代码
2018/08/23 Javascript
详解webpack loader和plugin编写
2018/10/12 Javascript
深入理解Puppeteer的入门教程和实践
2019/03/05 Javascript
小程序云开发实现数据库异步操作同步化
2019/05/18 Javascript
JS实现处理时间,年月日,星期的公共方法示例
2019/05/31 Javascript
jQuery实现推拉门效果
2020/10/19 jQuery
[02:41]DOTA2英雄基础教程 亚巴顿
2014/01/02 DOTA
一些Python中的二维数组的操作方法
2015/05/02 Python
Python 实现随机数详解及实例代码
2017/04/15 Python
全面了解Nginx, WSGI, Flask之间的关系
2018/01/09 Python
Python with语句用法原理详解
2020/07/03 Python
Bench加拿大官方网站:英国城市服装品牌
2017/11/03 全球购物
以太网Ethernet IEEE802.3
2013/08/05 面试题
Delphi工程师笔试题
2013/09/21 面试题
学校办公室主任职责
2013/12/27 职场文书
妇产医师自荐信
2014/01/29 职场文书
中秋节主持词
2014/04/02 职场文书
学生上课看漫画的检讨书
2014/09/26 职场文书
实习计划书范文
2015/01/16 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
浅谈Python从全局与局部变量到装饰器的相关知识
2021/06/21 Python